zoukankan      html  css  js  c++  java
  • Python基础入门知识点——深浅拷贝

    深浅拷贝

    对象引用、浅拷贝、深拷贝(拓展、难点、重点)

    Python中,对象的赋值,拷贝(深/浅拷贝)之间是有差异的,如果使用的时候不注意,就可能产生意外的结果

    其实这个是由于共享内存导致的结果

    拷贝:原则上就是把数据分离出来,复制其数据,并以后修改互不影响。

    先看一个非拷贝的例子

    使用=赋值(对象引用)

    =赋值:数据完全共享

    =赋值是在内存中指向同一个对象,如果是可变(mutable)类型,比如列表,修改其中一个,另一个必定改变

    如果是不可变类型 (immutable) ,比如字符串,修改了其中一个,另一个并不会变

     

    浅拷贝(copy)

    浅拷贝:数据半共享(复制其数据独立内存存放,但是只拷贝成功第一层)

     

    深拷贝(deepcopy)

    深拷贝:数据完全不共享(复制其数据完完全全放独立的一个内存,完全拷贝,数据不共享)

    深拷贝就是完完全全复制了一份,且数据不会互相影响,因为内存不共享。

    深拷贝的方法有

  • 相关阅读:
    Ubuntu16.04安装Docker、nvidia-docker
    Java 对象和类
    Java基础知识总结
    Java 学习路线
    编写radware的负载配置
    MySQL的主从复制+双主模式
    模拟MBR Grub故障修复
    搭建Nginx(haproxy)+keepalived+Tomcat双主高可用负载均衡
    golang数据库操作初体验
    我操蛋的2019
  • 原文地址:https://www.cnblogs.com/hhh188764/p/13526233.html
Copyright © 2011-2022 走看看