copy()和deepcopy()是Python语言copy模块中的两个method,copy()其实是与deep copy相对的shallow copy。对于简单的object,用shallow copy和deep copy没区别。复杂的Object,如list中套着list的情况,shallow copy中的子list并未从原object真的独立出来,也就是说,如果你改变原object的子list中的一个元素,你的copy就会跟着一起改变。deep copy则更加符合我们对复制的直觉定义:一旦复制出来了,就应该是独立的了。
这种不同涉及到Python的变量存储方法,可以参考以下博文:
本文详细解释了Python中copy和deepcopy的区别。对于简单对象两者并无差异,但当对象复杂时,如包含嵌套列表,shallowcopy可能导致意外的数据共享。deepcopy确保完全独立的副本。
533

被折叠的 条评论
为什么被折叠?



