元组
元组是不可变序列,元组一旦创建,用任何方法都不可以修改其元素。
元组的偶有元素是放在一对圆括号“()”中
1.元组创建与删除
使用“=”讲一个元组赋值给变量
>>> tuple=('a','b','c','d','e','f') >>> tuple ('a', 'b', 'c', 'd', 'e', 'f') >>> a=(3) >>> a 3>>> b=(3,) #一个元素的元组,最后必须多一个括号 >>> b (3,) >>> c=2, >>> c (2,)
使用tuple函数将其他序列转换为元组
>>> list=[1,2,3,4,5,6,7]>>> tuple(list) (1, 2, 3, 4, 5, 6, 7)
使用del可以删除元组对象,不能删除元组中的元素
2.元组与列表的区别
元组中的数据一旦定义就不允许更改。
无法向元组中添加元素
也无法对元组元素进行del操作,不能从元组中删除元素
tuple()冻结列表,而list()融化元组
3.元组的优点
元组的速度比列表更快。如果定义了一系列常量值,而所需做的仅是对它进行遍历,那么一般使用元组而不用列表
元组对不需要改变的数据进行“写保护”将使得代码更加安全
元组可用作字典键(特别是包含字符串、数值和其他元组这样的不可变数据的元组)。列表永远不能当做字典键使用,因为列表不是不可变的。
4.序列解包
可以使用序列解包功能对多个变量同时赋值
>>> x,y,z=1,2,3 #多个变量同时赋值 >>> tuple=(False,3,'python') >>> (x,y,z)=tuple >>> x,y,z=tuple >>> x,y,z=range(3) #可以对range对象进行序列解包 >>> a,b=b,a #交换两个变量的值 >>> a,b,c='ABC' #字符串也支持序列解包
>>> x,y,z=sorted([1,2,4]) #sorted()函数返回排序后的列表
zip()函数
用于将可迭代的对象作为参数,讲对象对应的元素打包成一个个元组 ,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同
利用*号操作符,可以将元组解压为列表。
古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。