1、对象的赋值

  都是进行对象引用(内存地址)传递,即 b is a ,a 变 b也变

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

2、浅拷贝

  会创建一个新的对象,对于对象中的元素,浅拷贝就只会使用原始元素的引用(内存地址)

  当我们使用下面的操作时,会产生浅拷贝:

    使用切片[:]操作

    使用工厂函数(list/dir/set)

    使用copy模块中的copy函数

3、深拷贝

  会创建一个新的对象,并且对于对象中的元素,深拷贝都会重新生成一份(有特殊情况,下面会说明),而不是简单的使用原始元素的引用(内存地址)

  拷贝的特殊情况:

    对于非容器类型(如数字,字符串,和其他‘原子’类型的对象)没有拷贝这一说

    如果元组变量只只包含原子类型对象,则不能深拷贝

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄