当前位置: 首页 > news >正文

python的深拷贝浅拷贝(copy /deepcopy )

先说结论:

浅拷贝:

浅拷贝对第一层的操作都是新建,不改变原对象。 

浅拷贝对于原拷贝对象中的嵌套可变对象引用,对原拷贝对象中的嵌套不可变对象新建

对新建的对象操作不会影响原被拷贝对象。

对引用对象操作会影响原被拷贝对象。

例如:a = [ [1,1],  [2,2] ]

a.append([3,3]) 是对a操作,也就是第一层

而a[1].append(2) 是对a[1] 进行操作,就是对嵌套的元素进行操作了。

深拷贝:

完全不影响原被拷贝对象

# 对列表的深浅拷贝
import copya = [1,2,(3,3),[4,4],[5,5]]
b = [1,2,(3,3),[4,4],[5,5]]
c = a.copy()
d = copy.deepcopy(b)
c[0] += 100
c.append((888,888))
c.append([999,999])
c[2] = (33,33)
c[4] = [5555,5555]c[3].append(4444)
d[0] += 100
d.append((888,888))
d[2] = (33,33)
d[3].append(4444)
d[4] = [5555,5555]
d.append([999,999])print('a',a,'       ','c',c)
print('b',b,'       ','d',d)

 

浅拷贝

 深拷贝

相关文章:

  • c语言数据结构--------选择排序
  • 《Operating System Concepts》阅读笔记:p764-p766
  • docker容器,mysql的日志文件怎么清理
  • Spark–steaming
  • 根据极点-零点分布进行状态空间模型降阶
  • 设备制造行业如何避免项目管理混乱?
  • 30分钟编写十大排序算法完成
  • NumPy入门:从数组基础到数学运算
  • Redis ⑤-单线程模型 | 常用数据结构
  • 【SAP-CO】成本主数据
  • UWB定位技术在钢铁厂行业中的创新应用与价值实践
  • 代理设计模式:从底层原理到源代码 详解
  • 物理机检查磁盘坏道方式
  • prtobuf的原理
  • 【Luogu】动态规划一
  • TS-300B浊度传感器详解(STM32)
  • STM32单片机入门学习——第46节: [14-1] WDG看门狗
  • Redis在.NET平台中的各种应用场景
  • AI日报 - 2025年4月23日
  • 代理模式(Proxy Pattern)详解:以延迟加载图片为例
  • 云南一男子酒后经常殴打七旬母亲,被警方拘14日罚600元
  • 李云泽:房地产“白名单”贷款审批通过金额增至6.7万亿元
  • 央行行长详解降准:将释放长期流动性1万亿,整体存款准备金率平均水平降至6.2%
  • 何立峰将访问瑞士、法国并举行中美经贸高层会谈、第十次中法高级别经济财金对话
  • “注胶肉”或已泛滥?这几种肉,再爱吃也要管住嘴
  • 我的诗歌阅读史