tuple ==> 元组,有序列表,一旦初始化就不能修改
-
tuple陷阱:当你定义一个tuple时,元素就必须被确定下来,比如
t = (1, 2) 输出 t (1, 2) -
定义空的tuple或者一个元素:
定义 空 tuple时 t = () 输出 t ()定义 一个数字元素时,也会加一个 ','以免误解为数学计算意义上的括号,字符串需要用到 ‘’,否则会报错 t = (1,) 输出 t 1 -- <class 'tuple'>,不加 ',' 则类型为 <class 'int'> t = (‘a’) 输出 t a --<class 'str'> -
list 创建时使用
[],tuple 创建时使用(),一定要区分好,把list和tuple结合起来,我们就可以组成一个“可变的”tuple:t = ('a', 'b', ['1', '2']) 更改元素 t[2][0] = 'X' t[2][1] = 'Y' 输出 t t = ('a', 'b', ['X', 'Y'])tuple 在定义上是不可变的,上述
t集合当然没有违反这个定义,在t中,t[2]是个集合list,它是可变的,对于tuple来说,t[2]它是个list集合,
一直是以集合存在于 tuple 中,所以 tuple保持了不可变更性,同时 list集合是可变的,所以就造成了 tuple 可变的假象。 -
访问元组tuple
t = (1, 2, 3, 4, 5) 访问元组 t[0] : 1 t[1:4] : (2, 3, 4, 5 ) -
删除元组,使用
del函数,删除元组后,在进行元素操作会报name 'xx' is not defined,元组未定义错误 -
连接元组,使用
+号,这个很有意思t1 = ('a', 'b') t2 = (1, 2 ) t1+t2 = ('a', 'b', 1, 2) -
元组复制, 使用
*号,就是乘法的意思t = ('a',) t*4 = ('a', 'a', 'a', 'a') -
检测元素是否存在,使用
in关键字,这是个判断 ,返回 True 或者 Falset = (1, 2, 3) 2 in t True -
迭代
for x in t: print xt = (1, 2, 3) for x in t: print(x)输出结果:
1 2 3 -
将列表转换为元组,使用
tuple(seq)函数,参数为 列表










网友评论