做者 | 弗拉德
来源 | 弗拉德(公众号:fulade_me)python
列表很是适合用于存储在程序运行期间可能变化的数据集。列表是能够修改的,这对处理网 站的用户列表或游戏中的角色列表相当重要。然而,有时候你须要建立一系列不可修改的元素, 元组能够知足这种需求。Python将不能修改的值称为不可变的,而不可变的列表被称为元组。git
元组看起来跟列表很想,但使用圆括号而不是方括号来标识。定义元组后,就能够使用索引来访问其元素,就像访问列表元素同样。
例如,若是有一个大小不该改变的矩形,可将其长度和宽度存储在一个元组中,从而确保它们是不能修改的:github
rectangle = (200, 50) print(rectangle[0]) print(rectangle[1])
咱们首先定义了元组rectangle,为此咱们使用了圆括号而不是方括号。接下来,咱们分别打印该元组的各个元素。
输出是数据结构
200 50
下面来尝试修改元组rectangle中的一个元素,看看结果如何:code
rectangle[0] = 250
若是咱们运行一下上面的代码,就会发现Python返回类型错误消息。由于元组是不容许被修改的,所以会出现以下错误:索引
TypeError: 'tuple' object does not support item assignment
须要记住的是:元组是不能够被修改的,因此使用过程当中不能修改元组的值。生命周期
像列表同样,也能够使用for循环来遍历元组中的全部值:游戏
rectangle = (200, 50) for r in rectangle: print(r)
输出结果为:get
200 50
虽然咱们不能修改元组内部的值,可是咱们能够经过给元组从新赋值的方式来来改变元组的值:it
rectangle = (200, 50) for r in rectangle: print(r) rectangle = (400,100) for r in rectangle: print(r)
输出以下:
200 50 400 100
相比于列表,元组是更简单的数据结构。若是须要存储的一组值在程序的整个生命周期内都 不变,可以使用元组。
小做业
9-1 有一个菜摊,提供五种蔬菜。请想出五种简单的蔬菜,并将其存储在一个元组中。
9-2 使用一个 for 循环将该菜摊提供的五种蔬菜都打印出来。
9-3给元组变量赋值,修改其中一种蔬菜为新品种,并使用一个 for 循环将新元组的每一个元素都打印出来。
9-4尝试修改其中的一个元素,核实 运行时会报错。
想查看做业答案能够去个人Githu仓库