PYthon 元组和列表的区别
1. 相同点:列表和元组是Python中最常用的两种数据结构,字典是第三种。都是序列都可以存储任何数据类型可以通过索引访问list和tuple都支持负索引list和tuple都支持切片操作list和tuple都可以随意嵌套2.写法上不同,列表使用list1=["1","2"], 元组使用()t=("https://china-testing.github.io/", "https://www.os
·
1. 相同点:
列表和元组是Python中最常用的两种数据结构,字典是第三种。
- 都是序列
- 都可以存储任何数据类型
- 可以通过索引访问
-
list和tuple都支持负索引
-
list和tuple都支持切片操作
-
list和tuple都可以随意嵌套
2. 写法上不同
列表使用list1=["1","2"], 元组使用()
t=("https://china-testing.github.io/", "https://www.oscobo.com/")
3. 是否可变
列表是可变的,而元组是不可变的,这标志着两者之间的关键差异。
我们可以修改列表的值,但是不修改元组的值。
列表是动态的,长度大小不固定,可以随意的增加、删除、修改元素
元组是静态的,长度在初始化的时候就已经确定不能更改,更无法增加、删除、修改元素
由于列表是可变的,我们不能将列表用作字典中的key。 但可以使用元组作为字典key
list1=[1,2,"ceshi"]
list1[0]="change list value1"
print(list1)
t1=("1","ceshi")
t1[0]="change tuple value"
'''
TypeError: 'tuple' object does not support item assignment'''
4.大小差异
Python将低开销的较大的块分配给元组,因为它们是不可变的。 对于列表则分配小内存块。 与列表相比,元组的内存更小。 当你拥有大量元素时,元组比列表快。列表的长度是可变的。
>>> l = ["https://china-testing.github.io/", "https://www.oscobo.com/"]
>>> t = ("https://china-testing.github.io/", "https://www.oscobo.com/")
>>> print(l.__sizeof__())
56
>>> print(t.__sizeof__())
40
更多推荐
所有评论(0)
您需要登录才能发言
查看更多评论