Python3 元组学习笔记

什么是元组?

元组(tuple)是Python中的一种不可变序列,不同于列表(list),元组的元素不能修改。

创建元组

可以使用小括号 () 或者 tuple() 函数来创建一个元组。例如:

Copy Code
tup = (1, 2, 3) print(tup) # 输出 (1, 2, 3) tup2 = tuple([4, 5, 6]) print(tup2) # 输出 (4, 5, 6)

访问元组中的元素

元组可以通过下标来访问其中的元素,下标从0开始。例如:

Copy Code
tup = ('a', 'b', 'c') print(tup[0]) # 输出 'a' print(tup[1]) # 输出 'b' print(tup[2]) # 输出 'c'

修改元组

因为元组是不可变的,所以我们无法直接修改元组中的元素。如果想要修改元组中的值,需要先转换成列表,修改后再转换回去。例如:

Copy Code
tup = (1, 2, 3) lst = list(tup) lst[0] = 4 tup = tuple(lst) print(tup) # 输出 (4, 2, 3)

切片元组

切片操作也可以用于元组中,可以通过切片获取到元组中的一部分。例如:

Copy Code
tup = ('a', 'b', 'c', 'd', 'e') print(tup[1:4]) # 输出 ('b', 'c', 'd') print(tup[:3]) # 输出 ('a', 'b', 'c') print(tup[3:]) # 输出 ('d', 'e')

遍历元组

可以使用for循环来遍历元组中的元素。例如:

Copy Code
tup = (1, 2, 3) for i in tup: print(i) # 输出 123

实例

下面是一个使用元组的实例,使用元组存储一些图形的基本信息,并通过遍历元组计算它们的面积。

Copy Code
# 定义一个存储图形信息的元组 shapes = ( ('triangle', 3, 6), ('rectangle', 4, 8), ('circle', 0, 10), ) # 遍历元组并计算图形的面积 for shape in shapes: if shape[0] == 'triangle': area = 0.5 * shape[1] * shape[2] elif shape[0] == 'rectangle': area = shape[1] * shape[2] else: area = 3.14 * shape[2] ** 2 print('The area of %s is %.2f' % (shape[0], area))

输出结果:

Copy Code
The area of triangle is 9.00 The area of rectangle is 32.00 The area of circle is 314.00