元组是不可变的, 而列表是可变的。
可变不可变则体现在了如下:
可变类型 列表, 字典 ——增加修改,都不会使ID发生变化
不可变类型 数字、字符串、元组 ——即如果赋予新值,他的ID会发生变化
元组通常由不同的数据,而列表是相同类型的数据队列。元组表示的是结构,而列表表示的是顺序。举个例子来讲:当你想激励棋盘上的一个子的坐标时,应该使用元组;当你想激励棋盘上所有的子的坐标(一系列相同的数据)时,应该使用列表。
表示一个点
point = (1,2)
表示一系列点
points = [(1,2),(1,3),(4,5)]
列表无法与字典进行互动,即不能将列表当做字典的key,而元组可以。
如:a = (1,2)
b = [4,5]
c = {a: ‘start point’} 正常
c = {b: ‘end point’} 报错
>>> c[a]
‘start point’
由于元组支持的操作比列表小,所以元组会比列表稍微快了一点。但除非有很大量的数据要处理,否则这一点还是不那么受强调的。