python的tuple知识点

定义

tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。

 t = ('Adam', 'Lisa', 'Bart','Jack')

创建tuple和创建list唯一不同之处是用( )替代了[ ]

现在,这个 t 就不能改变了,tuple没有 append()方法,也没有insert()和pop()方法。

获取 tuple 元素的方式和 list 是一模一样的,我们可以正常使用 t[0],t[-1]等索引方式访问元素,但是不能赋值成别的元素。

tuple和list一样,可以包含 0 个、1个和任意多个元素。

注意事项

正是因为用()定义单元素的tuple有歧义,所以 Python 规定,单元素 tuple 要多加一个逗号“,”,这样就避免了歧义:

 t = ('Jack', )

Python之“可变”的tuple

 t = ('Jack', 'Rose', ['A', 'B'])

注意到 t 有 3 个元素:'Jack','Rose'和一个list:['A', 'B']。list作为一个整体是tuple的第3个元素。list对象可以通过 t[2] 拿到。

tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

猜你喜欢

转载自my.oschina.net/u/140406/blog/1829481