Python 标准库的 copy 模块提供了对象拷贝的功能。 copy 模块中有两个函数 copy 和 deepcopy,分别支持浅拷贝与深拷贝。
copy_demo.py
importcopyclassMyClass(object):def__init__(self, name):
super(MyClass, self).__init__()
self.name=name
a= [MyClass('huey')]
b=copy.copy(a)
c=copy.deepcopy(a)PRint'a is b?', aisb#a is b? Falseprint'a == b?', a == b#a == b? Trueprint'a is c?', aisc#a is c? Falseprint'a == c?', a == c#a == c? Falsea[0].name='sugar'print'a[0].name =', a[0].name#a[0].name = sugarprint'b[0].name =', b[0].name#b[0].name = sugarprint'c[0].name =', c[0].name#c[0].name = huey