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

    赋值

    #_*_ encoding: utf-8 _*_   @author: ty  hery   2020/6/22
    print('赋值')
    will = ["Will", 28, ["Python", "C#", "JavaScript"]]
    wilber = will
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------will--------------------')
    #
    print('id_wilber',id(wilber))
    print('wilber',wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------wilber--------------------')
    #
    will[0] = "Wilber"
    will[2].append("CSS")
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------修改后的will--------------------')
    #
    print('id_wilber',id(wilber))
    print(wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------修改后的wilber--------------------')
    输出:
    赋值
    id_will 167692616
    will ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_will [37273304, 1701998912, 167690376]
    -------------will--------------------
    id_wilber 167692616
    wilber ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_wilber [37273304, 1701998912, 167690376]
    -------------wilber--------------------
    id_will 167692616
    will ['Wilber', 28, ['Python', 'C#', 'JavaScript', 'CSS']]
    id_ele_will [167667000, 1701998912, 167690376]
    -------------修改后的will--------------------
    id_wilber 167692616
    ['Wilber', 28, ['Python', 'C#', 'JavaScript', 'CSS']]
    id_ele_wilber [167667000, 1701998912, 167690376]
    -------------修改后的wilber--------------------
    

    浅拷贝, 切片也是浅拷贝

    print('浅拷贝')
    import copy
    will = ["Will", 28, ["Python", "C#", "JavaScript"]]
    wilber = copy.copy(will)
    
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------will--------------------')
    
    print('id_wilber',id(wilber))
    print('wilber',wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------wilber--------------------')
    
    will[0] = "Wilber"
    will[2].append("CSS")
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------修改后的will--------------------')
    
    print('id_wilber',id(wilber))
    print(wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------修改后的wilber--------------------')
    输出:
    浅拷贝
    id_will 167692616
    will ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_will [42450648, 1701998912, 167690376]
    -------------will--------------------
    id_wilber 167792904
    wilber ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_wilber [42450648, 1701998912, 167690376]
    -------------wilber--------------------
    id_will 167692616
    will ['Wilber', 28, ['Python', 'C#', 'JavaScript', 'CSS']]
    id_ele_will [167667000, 1701998912, 167690376]
    -------------修改后的will--------------------
    id_wilber 167792904
    ['Will', 28, ['Python', 'C#', 'JavaScript', 'CSS']]
    id_ele_wilber [42450648, 1701998912, 167690376]
    -------------修改后的wilber--------------------
    

    深拷贝

    import copy
    will = ["Will", 28, ["Python", "C#", "JavaScript"]]
    wilber = copy.deepcopy(will)
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------will--------------------')
    
    print('id_wilber',id(wilber))
    print('wilber',wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------wilber--------------------')
    
    will[0] = "Wilber"
    will[2].append("CSS")
    print('id_will',id(will))
    print('will',will)
    print('id_ele_will',[id(ele) for ele in will])
    print('-------------修改后的will--------------------')
    
    print('id_wilber',id(wilber))
    print(wilber)
    print('id_ele_wilber',[id(ele) for ele in wilber])
    print('-------------修改后的wilber--------------------')
    输出:
    id_will 167692616
    will ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_will [42909400, 1701998912, 167690376]
    -------------will--------------------
    id_wilber 167792904
    wilber ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_wilber [42909400, 1701998912, 167792840]
    -------------wilber--------------------
    id_will 167692616
    will ['Wilber', 28, ['Python', 'C#', 'JavaScript', 'CSS']]
    id_ele_will [167667000, 1701998912, 167690376]
    -------------修改后的will--------------------
    id_wilber 167792904
    ['Will', 28, ['Python', 'C#', 'JavaScript']]
    id_ele_wilber [42909400, 1701998912, 167792840]
    -------------修改后的wilber--------------------
    
    写入自己的博客中才能记得长久
  • 相关阅读:
    poj2778 DNA Sequence(AC自动机+矩阵快速幂)
    poj2001 Shortest Prefixes (trie树)
    hdu5536 Chip Factory
    解决 苹果手机点击输入框页面自动放大111
    css 记录
    对复选框自定义样式 优化方法
    css引入外部字体
    jquery获取当前页面的URL信息
    左侧导行伸缩控制
    表单提交同类数据的做成数组
  • 原文地址:https://www.cnblogs.com/heris/p/14666113.html
Copyright © 2011-2022 走看看