作者 | 弗拉德
起源 | 弗拉德(公众号:fulade_me)
元组
列表非常适合用于存储在程序运行期间可能变动的数据集。列表是能够批改的,这对解决网 站的用户列表或游戏中的角色列表至关重要。然而,有时候你须要创立一系列不可批改的元素, 元组能够满足这种需要。Python将不能批改的值称为不可变的,而不可变的列表被称为元组。
定义元组
元组看起来跟列表很想,但应用圆括号而不是方括号来标识。定义元组后,就能够应用索引来拜访其元素,就像拜访列表元素一样。
例如,如果有一个大小不应扭转的矩形,可将其长度和宽度存储在一个元组中,从而确保它们是不能批改的:
rectangle = (200, 50) print(rectangle[0]) print(rectangle[1])
咱们首先定义了元组rectangle,为此咱们应用了圆括号而不是方括号。接下来,咱们别离打印该元组的各个元素。
输入是
200 50
上面来尝试批改元组rectangle中的一个元素,看看后果如何:
<code class="py">rectangle[0] = 250
如果咱们运行一下下面的代码,就会发现Python返回类型谬误音讯。因为元组是不容许被批改的,因而会呈现如下谬误:
<code class="py">TypeError: 'tuple' object does not support item assignment
须要记住的是:元组是不能够被批改的,所以应用过程中不能批改元组的值。
遍历元组
像列表一样,也能够应用for循环来遍历元组中的所有值:
<code class="py">rectangle = (200, 50) for r in rectangle: print(r)
输入后果为:
<code class="py">200 50
给元组从新赋值
尽管咱们不能批改元组外部的值,然而咱们能够通过给元组从新赋值的形式来来扭转元组的值:
<code class="py">rectangle = (200, 50) for r in rectangle: print(r) rectangle = (400,100) for r in rectangle: print(r)
输入如下:
<code class="py">200 50 400 100
相比于列表,元组是更简略的数据结构。如果须要存储的一组值在程序的整个生命周期内都 不变,可应用元组。
小作业
9-1 有一个菜摊,提供五种蔬菜。请想出五种简略的蔬菜,并将其存储在一个元组中。
9-2 应用一个 for 循环将该菜摊提供的五种蔬菜都打印进去。
9-3给元组变量赋值,批改其中一种蔬菜为新品种,并应用一个 for 循环将新元组的每个元素都打印进去。
9-4尝试批改其中的一个元素,核实 运行时会报错。
想查看作业答案能够去我的Githu仓库