python笔记之copy,deepcopy和“=”

252 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

我的python笔记之copy,deepcopy和“=”

  • 1,copy的数据深层和浅层
  • 2,Python 存储变量的方式有所不同

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]
在这里插入图片描述