Python 标准库的 copy 模块提供了对象拷贝的功能。 copy 模块中有两个函数 copy 和 deepcopy,分别支持浅拷贝与深拷贝。
copy_demo.py
import copyclass MyClass(object): def __init__(self, name): super(MyClass, self).__init__() self.name = namea = [MyClass('huey')]b = copy.copy(a)c = copy.deepcopy(a)PRint 'a is b?', a is b # a is b? False print 'a == b?', a == b # a == b? Trueprint 'a is c?', a is c # 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
新闻热点
疑难解答