Day2 之 元组tuple
tuple 元组
也是有序列表 ,与list非常相似,但是tuple一旦初始化就不能修改。
name = ('a','b',1,2,3,True)
tuple不支持 append、insert ,因为tuple初始化后不能修改。
由于不可修改,所以代码更安全,如果可能的话,能用tuple代替list ,尽可能使用tuple。
也是有序列表 ,与list非常相似,但是tuple一旦初始化就不能修改。
name = ('a','b',1,2,3,True)
tuple不支持 append、insert ,因为tuple初始化后不能修改。
由于不可修改,所以代码更安全,如果可能的话,能用tuple代替list ,尽可能使用tuple。
tuple可以定义为空, 使用 a = () 来定义。
tuple的坑
如果tuple中只有1个元素,那么要使用 a = ('a',) b=(1,) 的方式来定义。
如果不加逗号的话, a = (1) == a = 1 ,被视为数学中的小括号,而不是元组。
用tuple包含list
tuple虽然初始化后不能修改,但是当tuple中的元素为list时, list依然是可以修改的。
>>> a = ('a','b',True,1,['qq','yy'],'End')
>>> a
('a', 'b', True, 1, ['qq', 'yy'], 'End')
>>> a[4]
['qq', 'yy']
>>> a[4][1] = 'aa'
>>> a
('a', 'b', True, 1, ['qq', 'aa'], 'End')
虽然tuple不可变,tuple第四个元素指向的是list,但是list的元素指向变了。
如果要保证tuple中一个内容都不变,就要保证元组中的任何一个元素本身就不能变。
练习:
L = [
['Apple', 'Google', 'Microsoft'],
['Java', 'Python', 'Ruby', 'PHP'],
['Adam', 'Bart', 'Lisa']
]
如果要保证tuple中一个内容都不变,就要保证元组中的任何一个元素本身就不能变。
练习:
L = [
['Apple', 'Google', 'Microsoft'],
['Java', 'Python', 'Ruby', 'PHP'],
['Adam', 'Bart', 'Lisa']
]
# 打印Apple:
print(?)
# 打印Python:
print(?)
# 打印Lisa:
print(?)
print(?)
# 打印Python:
print(?)
# 打印Lisa:
print(?)
个个原创文章
欢迎讨论
https://www.cnblogs.com/konggg/
欢迎转载收藏,转载请注明来源,谢谢支持!