本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、因为元素不可变性,它可以作为哈希类型的 key 值。这样使的key的描述意义更丰富,更易理解。
2、对于元组,解释器会缓存一些小的静态变量使用的内存,这样在初始化时,就比列表快。
元组的初始化及常用操作:
# 元组的初始化 a = (1, 2, 3) b = ('1', [2, 3]) c = ('1', '2', (3, 4)) d = () e = (1,) # 元组中只有一个元素时,需要使用逗号结尾 print(a, b, c, d, e) # (1, 2, 3) ('1', [2, 3]) ('1', '2', (3, 4)) () (1,) # 下标获取值 print(a[1]) # 2 # 元组合并 print(a+b) # (1, 2, 3, '1', [2, 3]) # 内建函数使用 # 元组长度 print(len(a)) # 3 # 使用 * 是复制指针 f = a*2 print(f) # (1, 2, 3, 1, 2, 3) print(id(f[0])) # 4376435920 print(id(a[0])) # 4376435920 print(id(f[3])) # 4376435920 # 无法更新编辑 # a[0] = 1 # Traceback (most recent call last): # File "/Users/deanwu/projects/01_LearnDocs/learn_codes/python/python_list.py", line 15, in <module> # a[0] = 1 # TypeError: 'tuple' object does not support item assignment # 无法删除 # del a[0] # Traceback (most recent call last): # File "/Users/deanwu/projects/01_LearnDocs/learn_codes/python/python_list.py", line 21, in <module> # del a[0] # TypeError: 'tuple' object doesn't support item deletion
以上就是python元组的优势分享,可以看出主要是不可变和初始化两个方面,在key值的多样描述和初始化的效率方面,都是我们在使用中频繁会用到的地方。