请详细描述列表与元组的区别,并举例说明
# 4个区别
# 1. 语法差异
a = (1, 2, 3) # 元组
b = [1, 2, 3] # 列表
# 2. 元组是只读的,列表是可读写的
# a[1] = 3 # 抛出异常
b[1] = 3
# 3. 拷贝不同
# 使用tuple函数后,元组仍然为自身
# 使用list函数后,会复制一个新列表
copy_a = tuple(a)
print(a is copy_a) # True
copy_b = list(b)
print(b is copy_b) # False
# 4. 大小不同,元组所占用的空间更小(大的内存块)
# 当元素比较多时,元组速度更快
print(a.__sizeof__())
print(b.__sizeof__())
True
False
48
64