美文网首页
Python浅拷贝与深拷贝的一点简单理解

Python浅拷贝与深拷贝的一点简单理解

作者: 原来如此君 | 来源:发表于2017-06-07 19:38 被阅读0次

Python中的对象分为可变对象与不可变对象,其区别主要在于内存地址,也即id的不同
对于不可变对象,浅拷贝与深拷贝没有区别,而对于可变对象,浅拷贝以及赋值语句均是把对象的id赋值给新的拷贝对象,而深拷贝则是会创建新的id
例:

图片.png

判断id是否相同:

图片.png

改变a中的对象,可以看到赋值的b,浅拷贝的c均改变,而深拷贝的d不变,原因就是d已经引用了不同的id:

图片.png

相关文章

  • python中的拷贝

    Python中的拷贝分为两种,浅拷贝与深拷贝 浅拷贝:浅拷贝是对于一个对象的顶层拷贝。通俗的理解是:拷贝了引用,并...

  • 深浅拷贝,面向对象,Symbol,Set,Map

    一:浅拷贝与深拷贝对象的浅拷贝:浅拷贝是对象共用的一个内存地址,对象的变化相互影响。对象的深拷贝:简单理解深拷贝是...

  • 简介深浅拷贝

    深浅拷贝 python 直接赋值,浅拷贝和深拷贝 直接赋值 其实就是对象的引用 (可以理解成浅拷贝) 浅拷贝: 拷...

  • 认识js下的浅拷贝与深拷贝

    浅拷贝与深拷贝 首先深拷贝和浅拷贝只针对像 Object, Array 这样的复杂对象的。简单来说,浅拷贝只拷贝一...

  • iOS之深拷贝与浅拷贝

    深拷贝与浅拷贝是在内存管理中非常重要的概念,理解好深拷贝和浅拷贝也有助于加深对iOS的内存管理的理解。 深拷贝与浅...

  • iOS 深浅拷贝

    iOS深拷贝与浅拷贝的区别 深拷贝与浅拷贝的概念:(我的理解,望不吝赐教) 浅拷贝:只copy一份对象的指针,指向...

  • iOS面试题-第二页

    11.深拷贝和浅拷贝的理解. 深拷贝;拷贝的内容. 浅拷贝:拷贝的指针. 深拷贝如: NSMutableDicti...

  • python(进阶一)

    三范式 GIL 深拷贝与浅拷贝 深拷贝 浅拷贝 跟引用的区别 python基本上如果提供了copy方法都是浅cop...

  • 简述三范式,GIL,浅拷贝与深拷贝

    三范式 GIL 深拷贝与浅拷贝 深拷贝 浅拷贝 跟引用的区别 python基本上如果提供了copy方法都是浅cop...

  • js浅拷贝深拷贝

    js浅拷贝,深拷贝的简单实现 基础数据 浅拷贝 深拷贝

网友评论

      本文标题:Python浅拷贝与深拷贝的一点简单理解

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