如果还记得第 2 章中的内容,我们说过,真正改变一个数或字符串是做不到的,你能改变的只是把一个名字指派到哪个数或字符串(换句话说,你只能移动标签)。不过,Python 中确实有一些可以改变的类型,列表就是其中之一。刚才已经看到,列表可以追加或删除元素,另外列表中的元素还可以排序或逆置。
这两种不同的变量分别称为可改变和不可改变的变量。可改变(mutable)是指“能够改变”或者“可以改变”。不可改变(immutable)表示“不能改变”或者“不可以改变”。在 Python 中,数字和字符串是不可改变的(不能改变),而列表是可改变的(能够改变)。
元组——不可改变的列表
有些情况下你可能不希望列表可以改变。Python 中有没有一种不可改变的列表呢?答案是肯定的。确实有一个名为元组(tuple)的类型,这就属于不可改变的列表。可以这样来建立元组:
my_tuple = ("red", "green", "blue")
这里使用了圆括号,而不是列表使用的中括号。
由于元组是不可改变的,所以不能对元组完成排序,也不能追加和删除元素。一旦用一组元素创建一个元组,它就会一直保持不变。