元组是不可变序列,通常用于存储异构数据的集合。range也是不可变序列,但只用于数字,通常用于for循环中。
构造元组
构造元组有以下方法:
1)用一对括号表示一个空元组:();
2)在单个元素后跟逗号表示单个元素的元组:a,或者(a,);
3)用逗号分隔的多个元素:a,b,c或者(a,b,c);
4)用tuple()或者tuple(iterable)构造元组。
tuple()创建一个空的元组;tuple(iterable)构造的元组和iterable具有相同的元素顺序,iterable可以是一个序列,一个支持迭代的容器,或者iterator对象,如果iterable已经是一个元组,则直接返回,看下面的例子:
>>> tuple('abc')
('a', 'b', 'c')
>>> tuple([1,2,3])
(1, 2, 3)
需要注意的是,构造元组真正需要的是逗号,而不是圆括号(例如一个元素的元组必须在后面带一个逗号),圆括号是可选的,除了空的元组或者为了避免语义冲突,例如,f(a,b,c)是3个参数的函数,而f((a,b,c))则是传入一个参数为元组的函数。
元组方法
元组实现了所有序列的公共方法。需要注意元组的分片还是元组: