首页 > 编程语言 > 详细

python的深浅拷贝,又忘记了,再复习一次。

时间:2021-08-19 14:46:59      阅读:27      评论:0      收藏:0      [点我收藏+]
  • 浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。他们的子对象还是指向统一对象(是引用)

  • 深拷贝(deepcopy): copy 模块的 deepcopy 方法,完全拷贝了父对象及其子对象。

  • >>> a=[1,[1,2,3]]
    >>> b=a.copy()
    >>> b
    [1, [1, 2, 3]]
    >>> a
    [1, [1, 2, 3]]
    

    此时,b是a的浅拷贝。

  • 改变a[1],(一个子对象[1,2,3]),发现b的内容也发生了改变,因为浅拷贝,二者的子对象仍指向同一个。
  • >>> a[1].append(4)
    >>> a
    [1, [1, 2, 3, 4]]
    >>> b
    [1, [1, 2, 3, 4]]
    

     

  • 深拷贝,看似和浅拷贝相同
  • 改变了a的子对象后,发现b的子对象未发生变化。即a和b的子对象,相互独立。
  • >>> a[1].append(5)
    >>> a
    [2, [1, 2, 3, 4, 5]]
    >>> b
    [2, [1, 2, 3, 4]]
    

     

  • 希望不要再忘了。。

python的深浅拷贝,又忘记了,再复习一次。

原文:https://www.cnblogs.com/ZhenghuiLyu/p/15161288.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!