Tuple(元组)
特点:元组是不可以改变的Python对象序列,元组不能被改变,即是元组不可以被修改。
标识:()逗号分隔值
例子:tup1 = (1, 2)
访问元组:
a = (1, 2, 3, 4)
b = ('abc', 'dong', 'you', 'yuan')
print a[0]
print b[1:3] # 下标1到3(不包括3)
print b[:] # 所有下标
# 输出结果:
# 1
# ('dong', 'you')
# ('abc', 'dong', 'you', 'yuan')
修改元组:元组的元素值是不允许修改的,但是可以对元组进行连接组合
tup1 = ('abc', 'dong', 'you', 'yuan')
tup2 = ('12', '34')
# tup1[0] = 'cde' # 非法操作
tup3 = tup1 + tup2
print tup3
# 输出结果
# ('abc', 'dong', 'you', 'yuan', '12', '34')
删除元组
:
元组不允许删除,可以使用del删除整个元组
tup1 = ('abc', 'dong', 'you', 'yuan')
print tup1
del tup1
print tup1
# 输出结果 出现报错信息
# ('abc', 'dong', 'you', 'yuan')
# print tup1
# NameError: name 'tup1' is not defined
内置函数:
cmp(tuple1, tuple2):比较两个元组元素。元组元素完全相同(共享同一组数据),返回0
tup1, tup2 = (123, 'dong'), (456, 'yuan')
print cmp(tup1, tup2)
print cmp(tup2, tup1)
tup3 = tup2 + (789,)
print cmp(tup2, tup3)
# 输出结果
# -1
# 1
# -1
len(tuple):计算元组元素个数。
max(tuple):返回元组中元素最大值。
min(tuple):返回元组中元素最小值。
tuple(list):将列表转换为元组。
拓展1:
元组中只包含一个元素时,需要在元素后面添加逗号来消除歧义。
例:tup2 = (1)与tup3 = (1,)的区别
原因说明:
python会认为a = (12)是一个整数(int)类型,而b = (12,)是一个元组,不信你可以试试打印type()看看
('abc')与('abc',)同理
拓展2:
tup1 = (1, 2, ['a', 'b'])
print tup1
tup1[2][0] = 'A'
tup1[2][1] = 'B'
print tup1
# 输出结果
# (1, 2, ['a', 'b'])
# (1, 2, ['A', 'B'])