推荐 :Python的深浅拷贝讲解
前言
对象、数据类型、引用 赋值 浅拷贝 深拷贝

一、Python对象
身份 类型 值


Python中,万物皆对象
二、数据类型
2.1 可变和不可变类型
不可变数据类型:数值、字符串、布尔值。不可变对象就是对象的身份和值都不可变。新创建的对象被关联到原来的变量名,旧对象被丢弃,垃圾回收器会在适当的时机回收这些对象。 可变数据类型:列表、字典、集合。所谓的可变指的是可变对象的值可变,但是身份是不可变的。









2.2 引用


三、赋值
3.1 相同数据,不同变量名




3.2 一个变量多次赋值


3.3 变量赋值



3.4 嵌套赋值



四、浅拷贝
import copy
4.1 不可变类型的浅拷贝



image-202011152259388334.2 可变类型的浅拷贝

列表本身的浅拷贝对象的地址和原对象的地址是不同的,因为列表是可变数据类型。 列表中的元素(第1个元素为例)和浅拷贝对象中的第一个元素的地址是相同的,因为元素本身是数值型,是不可变的。



五、深拷贝
5.1 不可变类型的深拷贝



5.2 可变类型的深拷贝




深拷贝对最外层数据是只拷贝数据,会开辟新的内存地址来存放数据。 深拷贝对里面的不可变数据类型直接复制数据和地址,和可变类型的浅拷贝是相同的效果。





六、元组的深浅拷贝
6.1 不存在嵌套结构

6.2 存在嵌套结构

七、is和==




总结
在不可变数据类型中,深浅拷贝都不会开辟新的内存空间,用的都是同一个内存地址。 在存在嵌套可变类型的数据时,深浅拷贝都会开辟新的一块内存空间;同时,不可变类型的值还是指向原来的值的地址。
转自:Datawhale;
版权声明:本号内容部分来自互联网,转载请注明原文链接和作者,如有侵权或出处有误请和我们联系。
合作请加QQ:365242293
数据分析(ID : ecshujufenxi )互联网科技与数据圈自己的微信,也是WeMedia自媒体联盟成员之一,WeMedia联盟覆盖5000万人群。

关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
赞助链接
排名
热点
搜索指数
- 1 更好的中国 造福亚太和世界 7904573
- 2 曝光!间谍在中国搜集亲本种子 7809301
- 3 矿工得知老婆生产 满身乌黑赶到医院 7712373
- 4 迎接神二十回家 东风着陆场准备就绪 7616826
- 5 最快纪录世界唯一!中国科技捷报频传 7522681
- 6 观众为全红婵下起“娃娃雨” 7424165
- 7 当心结石变癌 这俩高危饮食习惯速改 7331351
- 8 无意说的这些话可能是孩子自卑源头 7234437
- 9 开拓者召回杨瀚森 7138600
- 10 男子自称“玉皇大帝”敛财500万被抓 7046905







数据分析
