zoukankan      html  css  js  c++  java
  • 深拷贝浅拷贝

    浅拷贝:实际上只是对最外层对象进行了拷贝,而对内层对象则不进行拷贝,只增加了外层对象一份内存。
    深拷贝:对内层对象进行递归拷贝,增加了所有的内层对象占用的内存。

    对不可变类型(如元组)的特殊处理
    具体表现为如果元组的元素是集合类型,则deepcopy依然进行递归拷贝,而copy不进行任何处理,同赋值语句一样
    对于如果元组内元素不是集合类型,Python又有一种特殊处理,即使是自定义类型,copy和deepcopy的效果是一样的都相当于赋值语句

    如果测试时使用的元素类型为int型或者str型,那么得到的结果可能不是这样,
    因为这是Python对int型和str型进行的特殊处理
    深复制和浅复制都对字符串和整型数字有优化操作,在C#、OC中都存在,常被称为“字符串驻留”,
    Python中称为intern机制,对于相同值的对象优化为指向内存中的一块地址,而不再分配新的内存。

  • 相关阅读:
    二分专题
    数据结构-图
    Linux文件基本属性(以ls -l输出为例解释)
    shell脚本版素数筛
    Linux whereis,which
    Linux外网代理配置
    Linux三剑客
    Elasticsearch集群搭建(Linux)
    测试之路
    我的另一半
  • 原文地址:https://www.cnblogs.com/weiwei-python/p/9781224.html
Copyright © 2011-2022 走看看