• Python 中的深拷贝和浅拷贝


    一、浅拷贝
    python中 对象赋值时 默认是浅拷贝,满足如下规律:
    1. 对于 不可变对象(字符串,元组 等),赋值 实际上是创建一个新的对象;例如:

    >>> person=['name',['saving',100.0]]
    >>> hubby=person[:]
    >>> hubby
    ['name', ['saving', 100.0]]
    >>> wifey=list(person)
    >>> hubby[0]='joe'
    >>> wifey[0]='jane'
    >>> hubby,wifey
    (['joe', ['saving', 100.0]], ['jane', ['saving', 100.0]])
    说明:本例中的person的第一项'name' 是不可变字符串对象,所以
    >>> hubby[0]='joe'
    >>> wifey[0]='jane'
    分别创建了2个字符串对象
    

     

    2. 对于 可变对象,赋值实际上 只是增加了一个新的 引用。 接上例:

    >>> hubby[1][1]=20
    >>> hubby,wifey
    (['joe', ['saving', 20]], ['jane', ['saving', 20]])
    说明:可以发现,妻子jane的存款也为20,因为前面是一种浅拷贝,person的第二项是个列表,100是可变对象,
    

      

  • 相关阅读:
    spider-抓取页面内容
    Zabbix监控
    时间戳转换
    计算机脱域
    查询指定时间内审核失败的事件日志
    spider-抓取网页内容(Beautiful soup)
    Queue
    spider-抓取网页内容
    MyEclipse+Tomcat配置
    Gradle Java Web应用程序并在Tomcat上运行
  • 原文地址:https://www.cnblogs.com/juking/p/4913266.html
Copyright © 2020-2023  润新知