元组:元组也是一个容器类型,可以存储多个数据,但是元组一旦定义完成,元组里面的数据不能修改
元组好比是一个只读的列表。
元组的表现形式:(1, 'a')
元组的类型:tuple
元组的使用场景:
- 数据固定,不会进行修改
- 字符串的格式化输出,比如:
print("%d %s" % (1, 'a'))
- 函数的返回值,也可以使用元组。
示例:
- 定义元组
my_tuple = (1, 3.14, 'abc', range(3), [1, 3, 5], (1, 6)) print(my_tuple, type(my_tuple)) # 结果是:(1, 3.14, 'abc', range(0, 3), [1, 3, 5], (1, 6)) <class 'tuple'>
- 根据下标获取元组中的数据
result = my_tuple[0] print(result) # 结果是:1 result = my_tuple[-1] print(result) # 结果是:(1, 6) value = result[1] print(value) # 结果是:6 value = my_tuple[-1][1] print(value) # 结果是:6
- 元组也支持切片获取数据
value = my_tuple[1:3] print(value) # 结果是:(3.14, 'abc')
- 注意点:当元组中只有一个元素(数据)时,元组中的逗号不能省略
my_tuple = ('a',) print(my_tuple, type(my_tuple)) # 结果是:('a',) <class 'tuple'>
5.1.1 元组结合count和index
示例:
my_tuple = ('a', 'b', 1, 2, 'a')
count
:根据指定数据在元组中统计该数据出现的次数result = my_tuple.count('a') print(result) # 结果是:2
index
:根据指定数据获取该数据在元组的下标
- 要获取下标的数据
- 开始下标
- 结束下标(不包含)
index = my_tuple.index('b', 0, 2) print(index) # 结果是:1
5.1.2 元组的遍历
遍历元组和遍历字符串或者列表非常类似。
示例一:
for 循环
my_tuple = ('谭玹霖', '沐婉卿', '徐光耀') for value in my_tuple: print(value) # 结果是:谭玹霖 沐婉卿 徐光耀
示例二:
while 循环
# 记录当前的下标 index = 0 while index < len(my_tuple): # 根据下标获取数据 result = my_tuple[index] print(result) # 结果是:谭玹霖 沐婉卿 徐光耀 index += 1
总结:通过对比,只想获取容器类型中的数据,使用for
循环比较简单。