• 每天分享


    2018/7/31 

    1.深浅copy:

     

    总结:

    字符串中:

    • 对于赋值操作而言:所有的赋值操作都是公用的一个内存地址。
    • 如果改变了原有的数值的值,被赋值的变量的内存地址并不会发生变化,而改变了值的内存地址会发生变化。

    在列表中:

    • 对于列表的赋值操作:所有的赋值操作都是公用的一个内存地址,一个变量发生变化,另一个变量随之发生变化。内存地址依旧相同。
    • 序列对象的切片其实是浅拷贝,即只拷贝顶级的对象
    • 列表中的浅拷贝:原list变量的第一层,之后对新变量或者旧变量的第一层的修改不会影响到彼此,第二层以及更多层之间则是像第一中操作中一样,是互相影响的。
    • 列表中的深拷贝:复制出来的与原来的变量没有任何关系,最清爽的复制

    在元组中:

      没有深浅copy

    在集合中:

      只有浅copy,和原来的集合对象没有任何关系

    在字典中:

    • 赋值操作也是浅copy
    • 如果源拷贝对象只有一级目录的话,源做任何改动,不影响深浅拷贝对象
    • 如果源拷贝对象不止一级目录的话,源对一级目录的子目录做任何改动,都会影响浅拷贝,但不影响深拷贝
    深copy的使用方式:

    import copy
    data = {'user':'admin','num':[1,2,3]}
    data2 = data.copy()
    // 深copy的使用方式 data3
    = copy.deepcopy(data) print(data2) print(data3)
    
    
    
    
    
  • 相关阅读:
    利用服务器实现疫情查询小系统(Web版+APP)
    第五周总结
    第四周总结
    初试python爬取网页数据
    使用ECharts完成数据可视化
    第三周总结
    第二周总结
    求数组中最大子数组的和
    软工第二周博客作业
    MySQL学习笔记(3)——创建、查看、修改、删除数据库
  • 原文地址:https://www.cnblogs.com/zsdbk/p/9396551.html
Copyright © 2020-2023  润新知