使用不同的内存地址复制 - Python

时间:2015-03-13 21:30:03

标签: python class copy deep-copy

我创建了一个类对象,我将调用Node。

我想复制一个这个对象的实例。让我们说原作是" root"并将副本命名为" start"

如果我这样做 start = root。

当我进行任何更改以启动时,它也会更改root。这是因为它们共享一个内存地址。

如何使用不同的内存地址创建start = root?

经过一番搜索,我尝试了复制/深度复制,但它告诉我没有这样的属性。

有一种简单的方法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我已经使用lib拷贝中的deepcopy解决了这个问题。在我的情况下,我想要复制的对象中有其他对象,所以我不得不使用deepcopy,否则只需复制即可解决问题。 看一下lib的文档(https://docs.python.org/2/library/copy.html

记住:

import copy
start = copy.deepcopy(root)