1
据我所知,copy.deepcopy复制了包含在目标对象中的对象。我的deepcopy在这种情况下不起作用
但是我的代码在这种情况下不起作用。
import copy
class MyClass(object):
list_value = [1, 2, 3, 4, 5]
def __init__(self, name):
self.name = name
a = MyClass('a')
b = copy.deepcopy(a)
a.list_value[0] = 10
print a.list_value
print b.list_value
输出是说b
实例list_value
是用相同的a
list_value
。
[10,2,3,4,5]
[10,2,3,4,5]
我预期什么的唯一a
list_value
的更改。
有没有什么我错过了关于deepcopy?
啊......那么,我应该只在类字段中放置共享变量吗? –
你能解释一下“所有实例共享”是什么意思吗?此外,请提供有关此现象的文档链接。 –
@JaeJunLEE是的。 – JuniorCompressor