如何在Python中将对象实例保存到变量中

时间:2017-03-20 17:26:16

标签: python class object instances

我有一个类的实例,我想要保存在另一个变量中,这样我就可以对原始文件进行更改,而不会影响其他变量中存储的状态。

但是,我对原始对象(nn)所做的任何更改都会复制到第二个对象(nn_2)中。

代码:

nn_2 = nn
nn_2.LEARNING_RATE = 3
nn.LEARNING_RATE = 1
print(nn_2.LEARNING_RATE)
print(nn.LEARNING_RATE)

输出:

1
1

实现这一目标的方法是什么?

谢谢,

1 个答案:

答案 0 :(得分:0)

您应该使用copy.deepcopy()复制对象,以便它不会链接到同一个对象。

from copy import deepcopy

nn_2 = deepcopy(nn)
nn_2.LEARNING_RATE = 3
nn.LEARNING_RATE = 1
print(nn_2.LEARNING_RATE)
print(nn.LEARNING_RATE) # should be different now