[Python]字典Dictionary、列表List、元组Tuple差异化理解
概述:Python中这三种形式的定义相近,易于混淆,应注意区分.
aDict={'a':1, 'b':2, 'c':3, 'd':4, 'e':5}
aList=[1,2,3,4,5]
aTuple=(1,2,3,4,5)
一、字典Dictionary
语法形式:aDict={'a':1, 'b':2, 'c':3, 'd':4, 'e':5}
Python手册说明:https://docs.python.org/2.7/library/stdtypes.html#dict
- Dictionary是Python内置数据类型,定义了"键-值"间的一一对应关系。
- 每个元素都是key-value对,整个元素集合用大括号扩起来。
- 可通过key获取对应值,但不能根据value获取key。
- key不能相同,相同key则将覆盖就值。
- key大小写敏感,value可支持任意数据类型(字符串、整数、对象或其他Dictionary)。
- del可通过key删除字典中特定元素
del dict[k]。 - clear将清空字典中所有元素,空的大括号表示没有元素的字典。
二、列表List
语法形式:aList=[1,2,3,4,5]
- List中元素是可变的。
- List是使用中括号括起来的有序元素集合。
- List列表索引从0开始。
- 负数索引表示从List的尾部开始向前存取元素,list[-1]表示最后一个元素,可以理解list[-n]=list[len(list)-n]
- List[m:n]表示List中m<=k<n的子集,被称为slice,详见手册。
- List[:]返回与List中元素相同的一个新list,List[1:]取1-len(List)中所有元素
- List列表方法:insert()插入新的元素,append()在尾部追加新元素、列表,extend()将一个列表扩展到原列表中,index()返回首个出现的元素索引,k in list返回是否存在
- List可通过+连接两个列表,等价于list.extend(anotherList)。
- List中元素可以相同。
三、元组Tuple
语法形式:aTuple=(1,2,3,4,5)
- Tuple元组是不可变的List,不能改变元组中的元素值。
- 创建Tuple的形式与List相同,区别在于将[]换为()。
- Tuple元组没有append、extend、remove、pop、index等方法,但可使用in判断元素是否存在。
- 空元组可以用()表示,但只有一个元素的元组为避免歧义应当使用(n,)表示,而避免只用(n)的形式,Python可能误解为加了小括号的数字n。
- 列表和元组的相互转化:
atuple=tuple(alist)和alist=list(atuple) - 无关闭分隔符:任何以逗号分隔的无符号对象都认为是元组,如
x,y = 1,2则print "Value of x,y:", x, y - Tuple好处:速度比List快,代码安全。
Python元组包含了以下内置函数:
1、cmp(tuple1, tuple2):比较两个元组元素。
2、len(tuple):计算元组元素个数。
3、max(tuple):返回元组中元素最大值。
4、min(tuple):返回元组中元素最小值。
5、tuple(seq):将列表转换为元组。
参考文献
[Python]字典Dictionary、列表List、元组Tuple差异化理解的更多相关文章
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- python 数据类型: 字符串String / 列表List / 元组Tuple / 集合Set / 字典Dictionary
#python中标准数据类型 字符串String 列表List 元组Tuple 集合Set 字典Dictionary 铭记:变量无类型,对象有类型 #单个变量赋值 countn00 = '; #整数 ...
- python 变量、列表、元组、字典
python 变量.列表.元组.字典 1.python 变量赋值 2.ptython 列表 3.python 元组 4.python 字典 1. Python变量赋值 1.1变量的命名规 ...
- Python 学习笔记(1)Python容器:列表、元组、字典与集合
Python容器:列表.元组.字典与集合 列表: 1.列表 的创建 使用[ ] 或者 list()创建列表:empty_list = [ ] 或者 empty_list= list() 使用list( ...
- Python字典(Dictionary)
Python中字典与类表类似,也是可变序列,不过与列表不同,他是无序的可变序列,保存的内容是以键 - 值对的形式存放的.类似我们的新华字典,他可以把拼音和汉字关联起来,通过音节表可以快速的找到想要的字 ...
- python 字典,列表,集合,字符串,基础进阶
python列表基础 首先当然是要说基础啦 列表list 1.L.append(object) -> None 在列表末尾添加单个元素,任何类型都可以,包括列表或元组等 2.L.extend(i ...
- Python 字典(Dictionary)操作详解
Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...
- Python 字典(Dictionary) items()方法
描述 Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组.高佣联盟 www.cgewang.com 语法 items()方法语法: dict.it ...
- Python 字典(Dictionary) values()方法
描述 Python 字典(Dictionary) values() 函数以列表返回字典中的所有值. 语法 values()方法语法: dict.values() 参数 NA. 返回值 返回字典中的所有 ...
随机推荐
- VS2015 python
http://pgqlife.info/2015/05/05/VS-Python/ 配置文档
- 【Linux】MySQL配置
安装环境/工具 Linux( centOS 版) MySQL(MySQL-5.6.28-1.el7.x86_64.rpm-bundle.tar版) MySQL的目录结构 安装已经说过了,这里不再说了 ...
- 20155328 2016-2017-2 《Java程序设计》第7周学习总结
20155328 2016-2017-2 <Java程序设计>第7周学习总结 教材学习内容总结 时区 Date与DateFormat Date只用来获取epoch毫秒数 DateForma ...
- 2018.08.30 bzoj4720: [Noip2016]换教室(期望dp)
传送门 一道无脑的期望dp. 用f[i][j][0/1]表示前i堂课提出了j次申请且第i堂课没有(有)提出申请. 这样就可以状态转移了. 然而这题状态转移方程有点长... (主要是情况多... 代码: ...
- 2018.08.18 NOIP模拟 game(数位dp)
Game 题目背景 SOURCE:NOIP2015-SHY4 题目描述 Alice 和 Bob 正在玩一个游戏,两个人从 1 轮流开始报数,如果遇到 7 的倍数或者遇到的这个数的十进制表示中含 7 , ...
- 2018.07.22 codeforces750E(线段树维护状态转移)
传送门 给出一个数字字串,给出若干个询问,询问在字串的一段区间保证出现2017" role="presentation" style="position: re ...
- Python特殊方法
# __slots__如果要限制添加的属性,例如,Student类只允许添加 name.gender和score 这3个属性,就可以利用Python的一个特殊的__slots__来实现. # __sl ...
- java判断字符串是否为数字,包括负数
/** * 判断是否为数字,包含负数情况 * @param str * @return */ private boolean isNumeric(String str){ Boolean flag = ...
- WPF 嵌入字体文件
官方说明文档:将字体与应用程序一起打包 https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/advanced/packaging-fonts-w ...
- (KMP 模板)Number Sequence -- Hdu -- 1711
http://acm.hdu.edu.cn/showproblem.php?pid=1711 Number Sequence Time Limit: 10000/5000 MS (Java/Other ...