作者 | 弗拉德
起源 | 弗拉德(公众号:fulade_me)

元组

列表非常适合用于存储在程序运行期间可能变动的数据集。列表是能够批改的,这对解决网 站的用户列表或游戏中的角色列表至关重要。然而,有时候你须要创立一系列不可批改的元素, 元组能够满足这种需要。Python将不能批改的值称为不可变的,而不可变的列表被称为元组

定义元组

元组看起来跟列表很想,但应用圆括号而不是方括号来标识。定义元组后,就能够应用索引来拜访其元素,就像拜访列表元素一样。
例如,如果有一个大小不应扭转的矩形,可将其长度和宽度存储在一个元组中,从而确保它们是不能批改的:

rectangle = (200, 50) print(rectangle[0]) print(rectangle[1])

咱们首先定义了元组rectangle,为此咱们应用了圆括号而不是方括号。接下来,咱们别离打印该元组的各个元素。
输入是

20050

上面来尝试批改元组rectangle中的一个元素,看看后果如何:

rectangle[0] = 250

如果咱们运行一下下面的代码,就会发现Python返回类型谬误音讯。因为元组是不容许被批改的,因而会呈现如下谬误:

TypeError: 'tuple' object does not support item assignment

须要记住的是:元组是不能够被批改的,所以应用过程中不能批改元组的值。

遍历元组

像列表一样,也能够应用for循环来遍历元组中的所有值:

rectangle = (200, 50) for r in rectangle:    print(r)

输入后果为:

200 50

给元组从新赋值

尽管咱们不能批改元组外部的值,然而咱们能够通过给元组从新赋值的形式来来扭转元组的值:

rectangle = (200, 50) for r in rectangle:    print(r)rectangle = (400,100)for r in rectangle:    print(r)

输入如下:

20050400100

相比于列表,元组是更简略的数据结构。如果须要存储的一组值在程序的整个生命周期内都 不变,可应用元组。

小作业
9-1 有一个菜摊,提供五种蔬菜。请想出五种简略的蔬菜,并将其存储在一个元组中。
9-2 应用一个 for 循环将该菜摊提供的五种蔬菜都打印进去。
9-3给元组变量赋值,批改其中一种蔬菜为新品种,并应用一个 for 循环将新元组的每个元素都打印进去。
9-4尝试批改其中的一个元素,核实 运行时会报错。

想查看作业答案能够去我的Githu仓库