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

    import copy
    #浅拷贝
    #copy.copy()
    #深拷贝
    #copy.deepcopy()
    #赋值
    #a = '123'
    #b = a
    
    
    a1 = 123123
    a2 = 123123
    #查看 变量的内存地址
    print(id(a1))
    print(id(a2))
    a3 = a1
    print(id(a3))
    #这里看到 通过 赋值 他们永远用的都是同一个内存地址
    
    #下面看一个 浅拷贝,与上面的内存地址 是 同一个内存地址
    a4 = copy.copy(a3)
    print(id(a4))

    深浅拷贝应用

    dic = {
        "cpu:":[80,],
        "mem:":[80,],
        "disk:":[80]
    }
    # print("原来:",dic)
    new_dic = copy.copy(dic)
    #浅拷贝 修改 cpu 的第 0个元素 修改成 50
    new_dic['cpu:'][0] = 50
    print("原修改后::",dic) #正常来说 修改后的 只是修改了新的 new_dic 但是这里看到 修改后 原来的 dic 的cpu 的值 也被修改了
    print("new修改后:",new_dic)
    #输出:
    # 原修改后:: {'cpu:': [50], 'mem:': [80], 'disk:': [80]}
    # 修改后: {'cpu:': [50], 'mem:': [80], 'disk:': [80]}
    
    ##深拷贝 修改 cpu 的第 0个元素 修改成 50
    
    new_dic = copy.deepcopy(dic)
    new_dic['cpu:'][0] = 50
    print("原修改后:",dic)
    print("new修改后:",new_dic)
    #输出:
    # {'cpu:': [80], 'mem:': [80], 'disk:': [80]}
    # {'cpu:': [50], 'mem:': [80], 'disk:': [80]}
  • 相关阅读:
    Mysql知识:事务
    Mysql知识 索引补充
    Mysql知识:索引
    Leetcode 78 子集
    每日总结
    个人冲刺-第二阶段(8)
    每日总结
    个人冲刺-第二阶段(7)
    每日总结
    个人冲刺-第二阶段(6)
  • 原文地址:https://www.cnblogs.com/nb-blog/p/6425282.html
Copyright © 2011-2022 走看看