zoukankan      html  css  js  c++  java
  • 深浅copy

    ***补充:

    不可变与可变类型

    不可变类型:改变数值后,相应的内存地址即id也发生改变

    可变类型:改变数值后,相应的内存地址即id不发生改变

     对于 数字,字符串 深浅copy 都无意义 —————— 因为它们的内存地址不可变

     而对于 字典,元组,列表就不一样了

     浅层copy 仅复制外层数据,内层数据地址依旧相同

     而深层copy 外层,内层数据全都复制(即内存地址全都不同),但pyhton对其数字 字符串的优化 不算

    import copy

    key = 123

    key1 = copy.copy(key)  # 浅层copy

    key2 = copy.deepcopy(key) # 深层copy

    以上三种输出的 id()  全都相等 因为 深浅copy 对于 字符串,数字 等不可变对象 无意义

    key = {'tom': 1, 'jack': 2, 'L': [1,2]}

    key1 = copy.copy(key)

    key2 = copu.deepcopy(key)

    以上三种输出的 id('tom') 全都一样 # 因为对于字符串,数字 深浅copy无意义,但是 key 和 key1 的 id('L') 一样 而key2 与前两者对应的 id('L') 不一样 # key2不仅仅copy表层,内层数据也会copy

  • 相关阅读:
    ubuntu16.04左边栏图标效果设置
    VMware虚拟机 Ubuntu 16.04 安装 VMware Tools
    微信换取openid的值
    thinkphp关于T方法
    Think关于循环的事
    base64格式转换为图片
    Think视图模型格式
    thinkphp里多表事务
    ThinkPHP数据库驱动之mysql事物回滚
    webhook是啥?
  • 原文地址:https://www.cnblogs.com/christmassa/p/9006335.html
Copyright © 2011-2022 走看看