[转载]Python 元组、列表、字典、文件
python的元组、列表、字典数据类型是很python(there python is a adjective)的数据结构。这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益处。
元组
个人认为就像java的数组,python中的元组有以下特性:
- 任意对象的有序集合,这条没啥说的,数组的同性;
- 通过偏移读取;
- 一旦生成,不可改变;
- 固定长度,支持嵌套
来例子吧:
上面的例子足以说明大部分了,使用元组时最重要的一点是“一旦生成,就不可变了”。
列表
列表就像java里的collection,所具有的特性也要比元组更多,更灵活,其character总结如下:
- 任意对象的有序集合;
- 可通过偏移存取,注意,列表中的元素都是可变的,这是不同于元组的;
- 长度可变,支持嵌套;
- 还有一些类似java的对象引用机制
由于列表的这些特性,使得列表在实际应用中被广泛使用,下面是一些例子。
1) 首先是基本用法
2) 索引和分片,赋值(单个元素赋值,分片赋值)
3) 添加、排序、删除操作
4)一些有趣的用法(来自论坛 id—咖啡舞者)
去掉列表中每个元素头尾的空格:
把列表中,大于3的元素,乘以2:
把列表1的每一个元素和列表2的每一个元素相乘:
- >>> lst1 = [2, 4, 6]
- >>> lst2 = [4, 3, -9]
- >>> [x*y for x in lst1 for y in lst2]
- [8, 6, -18, 16, 12, -36, 24, 18, -54]
取获[0-10)的平方:
字典
python里的字典就像java里的HashMap,以键值对的方式存在并操作,其特点如下
- 通过键来存取,而非偏移量;
- 键值对是无序的;
- 键和值可以是任意对象;
- 长度可变,任意嵌套;
- 在字典里,不能再有序列操作,虽然字典在某些方面与列表类似,但不要把列表套在字典上
1) 基本操作
2) 修改,删除,添加
在这里需要来一句,对于字典的扩充,只需定义一个新的键值对即可,而对于列表,就只能用append方法或分片赋值。
3)对字典的遍历
文件
与java的File类相比,python的文件类要狭义一些
1) 文件写
python的一个open语句就打开了一个文件(当给定的文件不存在时,会自动建立一个新的文件)。open的第一个参数是文件名,第二个参数是操作模式,所谓操作模式就是你打开一个文件是用来干什么的,是读,还是写(当然操作模式不仅只有读和写)。还有一件事,操作完要记得关。
2) 文件读
很是简单,这样两句就顶java一长串的流嵌套,当然,java那样做也是有道理的。
ok,学了不少,说实话,python的core真的没多少,也很简单,难的是何时和如何用python。
转载自:http://yangsq.iteye.com/blog/128508
[转载]Python 元组、列表、字典、文件的更多相关文章
- python 元组 列表 字典
type()查看类型 //取整除 **幂 成员运算符: in x在y序列中,就返回true 反之 not in 身份运算符: is is not 逻辑运算符 and or not 字符编码 问题 ...
- python字符串/列表/字典互相转换
python字符串/列表/字典互相转换 目录 字符串与列表 字符串与字典 列表与字典 字符串与列表 字符串转列表 1.整体转换 str1 = 'hello world' print(str1.spli ...
- python元组 列表 (取值、替换、插入、添加、删除)
1.元组 列表 字典 元组( 元组是不可变的) hello = (1,2,3,4,5) type(hello)
- Python【列表 字典 元组】
列表列表用中括号[ ]把各种数据框起来,每一个数据叫作“元素”.每个元素之间都要用英文逗号隔开各种类型的数据(整数/浮点数/字符串)————————————————————————————从列表提取单 ...
- Python元组与字典详解
Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup ...
- Python 学习笔记(九)Python元组和字典(一)
Python 元组 元组的定义 元组(tuple)是一种Python对象类型,元组也是一种序列 Python中的元组与列表类似,不同之处元组的元素不能修改 元组使用小括号,列表使用方括号 元组的创建 ...
- 初识python 字符串 列表 字典相关操作
python基础(一): 运算符: 算术运算: 除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // ...
- python基础之数据类型/字符串/元组/列表/字典
Python 数据类型 数字类型: int整型,long 长整型(在python3.0里不区分整型和长整型).float浮点型:complex复数(python中存在小数字池:-5--257):布尔值 ...
- Python之路 day2 字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...
随机推荐
- 第1章 Sass简介
什么是 CSS 预处理器? 定义: CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为 CSS 增加了一些编程的特性,将 CSS 作为目标生成文件,然后开发者就只要使用这种语言 ...
- Android卸载程序之后跳转到指定的反馈页面
一个应用被用户卸载肯定是有理由的,而开发者却未必能得知这一重要的理由,毕竟用户很少会主动反馈建议,多半就是用得不爽就卸,如果能在被卸载后获取到用户的一些反馈,那对开发者进一步改进应用是非常有利的.目前 ...
- 【前端】Ember.js学习笔记
Model 在默认情况下,model钩子返回的值,会设置为关联的控制器的model属性.例如,如果App.PostsRoute通过model钩子返回了一个对象,这个对象会设置为App.PostsCon ...
- GOLANG 常用命令
golang常用命令: 命令 功能 build 编译包和依赖 run 编译并且直接运行 install 编译安装包和依赖 get 下载并安装包和依赖 fmt 调用gofmt格式化源码文件 d ...
- php set_time_limit()用法测试详解
在php中set_time_limit函数是用来限制页面执行时间的,如我想把一个php页面的执行时间定义为5秒就可以set_time_limit(5)了. 一个php脚本通过crontab每5分钟 ...
- Open any local folder/file in IE11 (and more) using MSHH
-------------------Poc.html------------------------ <OBJECT classid=% height=%> <PARAM name ...
- [poj2492]A Bug's Life(并查集+补集)
A Bug's Life Time Limit: 10000MS Memory Limit: 65536K Total Submissions: 34678 Accepted: 11339 D ...
- HTML5 Canvas一些常用的操作
粗略的Canvas API 1. context var context = canvas.getContext('2d'); 2.Canvas state context.save();//将当前状 ...
- easyx与VS2015
7.10 之前在文件头将__acrt_iob_func重定义&__iob_func,在格子涂色的程序中解决了问题:然而在俄罗斯方块的程序中出现了更多的问题,好像是FILE在其他外部依赖项cor ...
- MVC 使用 Ueditor富文本编辑器
一.Ueditor 1.下载Ueditor富文本编辑器 官方下载地址: http://ueditor.baidu.com/website/download.html 建议下载开发版,此处我下载的是 . ...