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

【python】deepcopy深拷贝浅拷贝(结合例子理解)

deepcopy 是 Python copy 模块中的一个函数,用来创建一个对象的完全独立副本包括其内部嵌套的所有对象

它解决的问题是:当你复制一个复杂的数据结构(如列表套列表、对象套对象)时,如果你只是普通的赋值或用 copy.copy()浅拷贝),内部结构仍然共享内存,一改全改。而 deepcopy 会彻底复制所有层级,互不影响。

代码对比

1.使用deepcopy结果

from copy import deepcopya = [1, 2, [3, 4]]
b = deepcopy(a)
b[2][0] = 99print(a)  # 原列表没变 → [1, 2, [3, 4]]
print(b)  # 变了 → [1, 2, [99, 4]]

2.未使用浅拷贝

from copy import deepcopya = [1, 2, [3, 4]]
b = a
b[2][0] = 99print(a) 
print(b) 

总结

方法是否复制内部结构?是否互相影响?
=❌(只是引用)
copy.copy()(浅拷贝)⚠️ 只复制最外层✅(嵌套结构共享)
copy.deepcopy()✅(所有层级都复制)❌(完全独立)

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

相关文章:

  • 3分钟极速部署MySQL:brew/apt/yum全平台一条龙实战
  • 【计算机网络 | 第三篇】常见的网络协议(二)
  • 数据结构实验7.1:二叉树的遍历
  • WIN10重启开机不用登录,直接进入桌面
  • Mysql insert一条数据的详细过程
  • C语言求执行次数
  • 【牛客练习赛137 C】题解
  • 开发工具~
  • Android音视频开发
  • Vue.js核心功能实现
  • 计算机视觉与深度学习 | TensorFlow基本概念与应用场景:MNIST 手写数字识别(附代码)
  • Mamba模型时间序列预测
  • Java创建对象的方式
  • 中级软件设计师 - 知识点(附真题)目录大全
  • 2025年4月19日-美团春招笔试题-第三题
  • Java synchroinzed和ReentrantLock
  • IDEA连接达梦数据库
  • NumPy:数值计算基础与高性能数组操作
  • 约束:常见约束(常见约束-例子,外键约束)
  • Transformers是一种基于自注意力机制的神经网络模型
  • ADVB的机载数字视频系统传输
  • AI 中的 CoT 是什么?一文详解思维链
  • 黑马点评redis改 part 3
  • Redis ④-通用命令
  • JavaWeb 课堂笔记 —— 15 MyBatis 基础操作
  • PG psql --single-transaction 参数功能
  • JavaScript 位掩码常量教程
  • Python range 使用详解
  • Oracle--用户管理
  • React 路由入门秘籍:BrowserRouter 的江湖之道