当前位置: 首页 > 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)

 

浅拷贝

 深拷贝

http://www.dtcms.com/a/149729.html

相关文章:

  • 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)详解:以延迟加载图片为例
  • NLP高频面试题(五十)——大模型(LLMs)分词(Tokenizer)详解
  • 【C++】Json-Rpc框架项目介绍(1)
  • Agent框架LangGraph:实现一个简单的Plan-and-Execute Agent
  • 电子电器架构 --- 面向下一代车辆的演进式(发展演变的)汽车网关
  • 仅追加KV数据库
  • 实验一 进程控制实验
  • 2023蓝帽杯初赛内存取证-4
  • NVIDIA 自动驾驶技术见解
  • 从零到多智能体:Google Agent开发套件(ADK)入门指南
  • C语言教程(十三):C 语言中 enum(枚举)的详细介绍