繁体   English   中英

深度复制对象失败

[英]deepcopy objects failed

我是社区的新手,感谢您的任何答复。 我最近学习了Python,并尝试编写一个函数来深度复制某些对象。

import copy
class node:
    def __init__(self,x):
        self.x=x

a=node(8)
d=node(10)
c=copy.deepcopy(d)
def copyNode(a):
    c=copy.deepcopy(a)
copyNode(a)
print c.x

在上面,我尝试使用copyNode函数将节点a深度复制到c 但是,调用此方法后,打印输出为10,这意味着该功能不起作用。 知道我做错了什么吗? 谢谢!

c=copy.deepcopy(a)的变量c在copyNode函数内部本地定义。 您在那里打印cx时看到:

import copy
class node:
    def __init__(self,x):
        self.x=x

a=node(8)
d=node(10)
c=copy.deepcopy(d)
def copyNode(a):
    c=copy.deepcopy(a)
    print(c.x)
print(c.x)
copyNode(a)
print(c.x)

输出: 10 8 10

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM