元组(Tuple):元组是不可变的,一旦创建就不能修改其内容。这意味着你不能增加、删除或更改元组中的元素。元组使用小括号()表示。元组可以一次性存储多个数据,且可以存不同数据类型。
定义元组
语法:
# 存多个数据的元组
变量 = (数据1, 数据2, 数据n)
# 存单个数据的元组
变量 = (数据1, )
注意:如果定义的元组中只有一个数据,这个数据后面也要跟上逗号,这样定义的数据是元组类型。如果没有跟上逗号,那么定义的数据的类型是元组中数据的数据类型。
示例:定义元组
t1 = (10, 20, 30)
t2 = (10,)
示例:单个数据的元组的数据类型
t1 = (10,)
print(type(t1)) # 跟上逗号后,数据类型是元组
t2 = (20)
print(type(t2)) # 不跟逗号,由于20是int类型,那么变量t2的类型也是int
t3 = ('Hi')
print(type(t3)) # 不跟逗号,由于Hi是str类型,那么变量t3的类型也是str
元组的查找
- 下标:查找返回指定下标位置的数据。下标超出元组长度报错IndexError: tuple index out of range
示例:
t1 = ('Tom', 'Jerry', 'Spike')
print(t1[2]) # 打印 Spike
- index():返回指定数据所以位置的下标。数据不存在报错:ValueError: tuple.index(x): x not in tuple
语法:
元组序列.index(数据, 开始位置下标, 结束位置下标) #省略开始结束下标表示在整个元组中查找。不省略表示在指定下标范围内查找。
name_tuple = ('Tom', 'Jerry', 'Spike')
print(name_tuple.index('Tom')) # 返回所在下标 0
print(name_tuple.index('Jerry', 0, 2))
- count():统计指定数据在元组中出现的次数。
示例:
name_tuple = ('Tom', 'Jerry', 'Spike')
print(name_tuple.count('Tom')) # 打印出现次数 1
- len():获取元组的长度。即元组中数据的个数。
name_tuple = ('Tom', 'Jerry', 'Spike')
print(len(name_tuple)) # 打印元组长度 3
如果元组中的数据有列表,修改列表里的数据是可以的。
示例:
name_tuple = ('Tom', 'Jerry', 'Spike', [10, 20, 30])
name_tuple[3][0] = 500
print(name_tuple) # ('Tom', 'Jerry', 'Spike', [500, 20, 30])