天天看點

18 - 較長的描述清單與元組的差異

請較長的描述清單與元組的差別,并舉例說明

# 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