美文网首页
关于赋值,浅拷贝与深拷贝的形象理解

关于赋值,浅拷贝与深拷贝的形象理解

作者: Closears | 来源:发表于2018-04-21 03:39 被阅读13次

赋值:旧瓶装旧酒
a = b,其中的ab指向同一块内存区域。

浅拷贝:新瓶装旧酒
a = b[:]或者a = b.copy(),其中的ab虽然不指向同一块内存区域,但是这两个容器内部所存储的数据的地址值(在Python中可以通过id()这个函数来访问到)是相同的。也就是说,我们上面的操作,即a = b[:]或者a = b.copy()并没有产生新的酒,只是产生了新的酒瓶。

深拷贝:新瓶装新酒
a = b.deepcopy(),我们既产生了新的酒瓶(ab),又产生了新的酒(酒指的是ab这两个容器里面存储的数据。经过深拷贝之后,它们内容相同,但是地址不同)。

相关文章

  • 简介深浅拷贝

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

  • 关于赋值,浅拷贝与深拷贝的形象理解

    赋值:旧瓶装旧酒,a = b,其中的a和b指向同一块内存区域。 浅拷贝:新瓶装旧酒,a = b[:]或者a = b...

  • 赋值 浅拷贝 深拷贝

    赋值、浅拷贝、深拷贝赋值就是完全引用原来的对象通俗的理解,浅就是外面,深就是里面。浅拷贝的意思就是只拷贝外面的一层...

  • JAVA设计模式:原型模式与拷贝

    深拷贝与浅拷贝 浅拷贝:对象A进行赋值操作得到对象B,这就是浅拷贝,修改对象A的属性会影响到B的属性 深拷贝:深拷...

  • js深拷贝浅拷贝

    目录 一.数据类型 二.浅拷贝与深拷贝 三.赋值和浅拷贝的区别 四.浅拷贝的实现方式 五.深拷贝的实现方式 一.数...

  • JavaScript 深拷贝、浅拷贝和 Object.assig

    数组解构赋值的模式同样适用于任意迭代器:ES6 变量声明与赋值:值传递、浅拷贝与深拷贝详解 浅拷贝 浅拷贝是指复制...

  • Python中的引用赋值,深拷贝,浅拷贝

    摘要:Python,引用赋值,深拷贝,浅拷贝 总结一下Python中的变量的引用赋值,深拷贝和浅拷贝,先上结论 赋...

  • python的浅拷贝和深拷贝

    对于不可变类型,浅拷贝和深拷贝没有区别 对于不可变类型 赋值 浅拷贝 深拷贝

  • 深拷贝 浅拷贝

    深入认识深拷贝 浅拷贝 公共方法 // 深拷贝 浅拷贝 对于基本类型来说 对于赋值操作 就是 深拷贝 因为值...

  • 深浅拷贝理解

    先看最简单的赋值 (a=b) 浅拷贝 补充说明浅拷贝 如图 深拷贝

网友评论

      本文标题:关于赋值,浅拷贝与深拷贝的形象理解

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