1. 程式人生 > >Python的深淺拷貝

Python的深淺拷貝

淺拷貝——引用拷貝

list1 = [1, 2, 3]
list2 = list1
list2[0] = 3
print(id(list1), id(list2))
print(list1, list2)

結果

46777544 46777544
[3, 2, 3] [3, 2, 3]

可見是引用相同記憶體地址,一個修改後另一個也會隨之改變。

深拷貝——記憶體拷貝

list3 = [1, 2, 3]
list4 = list3.copy()
list4[0] = 2
print(id(list3), id(list4))
print(list3, list4)

結果

46595208 46593864
[1, 2, 3] [2, 2, 3]

可見使用的不同記憶體地址,一個修改後另一個並不會改變。