python中複製、淺層拷貝、深層拷貝的區別

python中複製、淺層拷貝、深層拷貝的區別
一、學習要點:
1.python中的複製與拷貝的區別
2.python中淺層拷貝與深層拷貝的區別
二、代碼:

import copy
a=[1,2,3,4,['a','b']]
b=a
c=copy.copy(a)
d=copy.deepcopy(a)
a.append(5)
print(a)
print(b)
print(c)
print(d)

a[4].append('c')
print(a)
print(b)
print(c)
print(d)

三、運行結果:
在這裏插入圖片描述
四、注意要點:
1.外層添加元素時,淺拷貝c不會隨原列表a變化而變化;內層list添加元素時,淺拷貝纔會變化。
2.無論原列表a如何變化,深拷貝d都不會發生變化。
3.賦值對象指向原對象,賦值對象隨原列表一起變化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章