Bootstrap

python学习 -- 元组和列表区别

元组和列表的区别

相同点:

  • 元组和列表在Python中,都是有序的,可迭代的数据结构。
  • 元组和列表都是异构的,都可以存放不同数据类型的元素。

不同点:

  • 元组是不可变的,不可以进行增删改操作,一旦定义,无法修改
  • 列表是可变的,可以对列表中的元素进行增删改操作,空列表有实际意义。

内存占用:

由于元组与列表内部的实现机制不同,在相同元素和个数的情况下,元组占用内存空间更小。

from sys import getsizeof
t = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(getsizeof(t))  # 120
print(getsizeof(l))  # 152

总结对比

对比元组列表
定义(1, 2, 3)[1, 2, 3]
修改不支持支持
添加不支持支持
删除不支持支持
索引访问支持支持
切片支持支持
遍历支持支持
应用场景固定的,不会被修改的数据不固定的,可以被修改的数据
占用内存较小较大

 

;