元组是存储有序对象的一种容器。元组是不可变的,创建后无法修改其中任何元组的值,也无法添加或修改元素。
元组用圆括号表示,且必须用逗号分隔元组中的元素。
元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。
In [1]: result = (1) # 不加逗号,类型为整型。
In [2]: result, type(result)
Out[2]: (1, int)
In [3]: result = (1,) # 加上逗号,类型为元组。
In [4]: result, type(result)
Out[4]: ((1,), tuple)
访问
In [1]: result = ("A", "B", "C", 1, 2, 3)
In [2]: result[0] # 单个索引取值
Out[2]: 'A'
In [3]: result[:3] # 切片取值
Out[3]: ('A', 'B', 'C')
In [4]: result[::2] # 切片步长取值
Out[4]: ('A', 'C', 2)
遍历
In [1]: result = ("A", "B", "C", 1, 2, 3)
In [2]: for i in enumerate(result):
...: print(i)
...:
(0, 'A')
(1, 'B')
(2, 'C')
(3, 1)
(4, 2)
(5, 3)
修改
元组中如果有列表,则列表的元素是可以修改的。
In [1]: result = ("A", "B", "C", "D", 1, 2, 3, [4, 5, "li"])
In [2]: result[-1][-1] = result[-1][-1].upper()
In [3]: result
Out[3]: ('A', 'B', 'C', 'D', 1, 2, 3, [4, 5, 'LI'])
拼接
In [1]: result1 = ("A", "B", "C", "D")
In [2]: result2 = (1, 2, 3, 4)
In [3]: result1 + result2
Out[3]: ('A', 'B', 'C', 'D', 1, 2, 3, 4)
删除
del 语句,删除整个元组。
In [1]: result = ("A", "B", "C", "D", 1, 2, 3, 4)
In [2]: del result