元组与列表的区别

来源:互联网 发布:域名注册查询软件 编辑:程序博客网 时间:2024/05/16 14:54

1.可变与不可变

元组是不可变的, 而列表是可变的。

可变不可变则体现在了如下:

可变类型 列表, 字典 ——增加修改,都不会使ID发生变化

不可变类型 数字、字符串、元组 ——即如果赋予新值,他的ID会发生变化

2.内部区别

元组通常由不同的数据,而列表是相同类型的数据队列。元组表示的是结构,而列表表示的是顺序。举个例子来讲:当你想激励棋盘上的一个子的坐标时,应该使用元组;当你想激励棋盘上所有的子的坐标(一系列相同的数据)时,应该使用列表。

表示一个点
point = (1,2)

表示一系列点
points = [(1,2),(1,3),(4,5)]

3.与字典的联系

列表无法与字典进行互动,即不能将列表当做字典的key,而元组可以。

如:a = (1,2)
b = [4,5]

c = {a: ‘start point’} 正常

c = {b: ‘end point’} 报错

>>> c[a]

‘start point’

4.执行复杂度

由于元组支持的操作比列表小,所以元组会比列表稍微快了一点。但除非有很大量的数据要处理,否则这一点还是不那么受强调的。



0 0