区别与联系:
大家都是复制,区别就在文字上’深’和‘浅’上,下面对浅拷贝和深拷贝进行可视化解释。
程序理解:
第一行
import copy
a = [1,2,3,[4,5,[6,7]]]
python底层实现:
b=a.copy
浅拷贝底层实现:
c=copy.deepcopy(a)
深拷贝底层:
总结:
用通俗的话说浅拷贝只拷贝’一级目录’,其他级采用引用方式,而深拷贝是完整的copy。copy的意义在于通过拷贝的手段来防止冲突。下面我们来分析下面代码的区别来加深理解。
b[3][1]=9
底层实现:(a,b相应的元素都从5变成9)
c[3][1]=9
底层实现:(只有c中的5变成9,a中的5没变)