Python的List vs Tuple比较


讨论Python 中List列表和元组Tuple的不同和相似之处。
 
可变性
List 和 Tuple 都是数据的集合,可以包含任何类型的数据(异构)。

  •  List 是可变的。因此,列表的大小是动态的。
  • 元组是不可变的。因此,元组的大小是固定的。

 
语法
  • List使用 [ 和 ] 创建列表文字。所有项目都放在这两个方括号内:
    list_data = ['Google', 'Runoob', 1997, 2000]
  • 元组文字是使用 ( 和 ) 创建的。所有项目都放在这两个圆括号内:
    tup_data = ('Google', 'Runoob', 1997, 2000)

 
数据类型
在 Python 中通过使用 type(),我们可以获得一个对象的数据类型:

>>> tup='a','b',1,2
>>> type(tup)
<class 'tuple'>

List的数据类型是:<class 'list'>
Tuple的数据类型是:<class 'tuple'>
 
操作
由于列表是可变的,因此可以在运行时添加/删除项目。
因此,与元组相比,列表提供了更多的操作。
 
内存使用
列表是可变的,因此它的大小是动态的。在运行时,它的大小可以增大或缩小。为此,总是使用一点额外的内存。
因此,相比之下,列表比类似大小的元组需要更多的内存。
  
时间效率
元组比列表略有优势,尤其是在考虑查找值时。
 
两者相似之处

  • 两者都存储数据集合。
  • 两者都可以包含异构数据类型。这意味着您可以存储任何类型的数据类型。
  • 两者都是有顺序的,这意味着您放置项目的顺序将保持不变。
  • 两者都是连续的。这意味着它可以迭代包含的项目。
  • 两者的项目都可以通过整数索引运算符访问,在方括号中提供。示例,列表[0],元组[1]