Python的元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可
创建元组
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5)
tup3 = "a", "b", "c", "d"
tup4 = ()
<class 'tuple'>
<class 'tuple'>
<class 'tuple'>
<class 'tuple'>
元组中只包含一个元素时,需要在元素后面添加逗号来消除歧义
tup1 = (50,)
元组与字符串类似,下标索引从0开始,可以进行截取,组合等
访问元组
元组可以使用下 标索、截取 引来访问元组中的值,如下实例:
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print("tup1[0]: ", tup1[0])
print("tup2[1:5]: ", tup2[1:5])
···
tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)
修改元组
元组中的元素值是 不允许修改 的,但我们可以对元组进行连接组合,如下实例:
代码如下:
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# 以下修改元组元素操作是非法的
# tup1[0] = 100
# 创建一个新的元组
tup3 = tup1 + tup2;
print(tup3)
删除元组
元组中的元素值是 不允许删除 的,但我们可以使用 del 语句来删除整个元组,如下实例:
tup = ('physics', 'chemistry', 1997, 2000);
del tup;
print("After deleting tup : ")
print(tup)
After deleting tup :
print(tup)
NameError: name 'tup' is not defined
元组运算符
与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。
元组不可变,看一种“可变的”tuple:
提取出列表,做改变
t = ('a', 'b', ['A', 'B'])
list=t[2]
list[0]='M'
list[0]='H'
print(t)
t[2][0] = 'X'
t[2][1] = 'Y'
print(t)
('a', 'b', ['H', 'B'])
('a', 'b', ['X', 'Y'])