python笔记之copy,deepcopy和“=”

本文探讨了Python中的数据复制,重点介绍了浅拷贝和深拷贝的区别。浅拷贝仅复制对象的引用,而深拷贝会创建全新的独立对象。同时,解释了Python中变量赋值的实质,即给底层对象贴标签的过程,而非简单的值复制。通过示例展示了这些概念如何影响复杂对象的复制和变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,copy的数据深层和浅层

copy对于一个复杂对象的子对象并不会完全复制,比如序列里的嵌套序列,字典里的嵌套序列等都是复杂对象的子对象。对于子对象,python会把它当作一个公共镜像存储起来,所有对他的复制都被当成一个引用,所以说当其中一个引用将镜像改变了之后另一个引用使用镜像的时候镜像已经被改变了

在这里插入图片描述

2,Python 存储变量的方式有所不同,

当在 Python 中 a = 1 应该理解为给 底层存储的变量1 贴上了一个标签 a。当再把a=2 的时候,就好像把 a 这个“外包装”从原来的 1 上拿下来,贴到对象 “2” 上,建立新的个体。
以下示例有些捉摸不透,有时间继续研究:

有:var_b=[4,5,6]
在这里插入图片描述
无:var_b=[4,5,6]
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值