美文网首页
deepcopy 和 copy的区别?

deepcopy 和 copy的区别?

作者: Mlotjve | 来源:发表于2018-08-25 23:57 被阅读0次
  • copy 仅拷贝对象本身,而不拷贝对象中引用的其它对象。
  • deepcopy 除拷贝对象本身,而且拷贝对象中引用的其它对象。(子对象)
image.png

示例:

import copy

a = [1, 2, 3, 4, ['a', 'b']]  # 原始对象

b = a  # 赋值,传对象的引用
c = copy.copy(a)  # 对象拷贝,浅拷贝
d = copy.deepcopy(a)  # 对象拷贝,深拷贝

a.append(5)  # 修改对象a
a[4].append('c')  # 修改对象a中的['a', 'b']数组对象

print('a = ', a)
print('b = ', b)
print('c = ', c)
print('d = ', d)

output

相关文章

网友评论

      本文标题:deepcopy 和 copy的区别?

      本文链接:https://www.haomeiwen.com/subject/nzsniftx.html