浅拷贝与深拷贝 C深浅拷贝与Python的区别C分浅拷贝 / 深拷贝是针对堆内存裸指针根源是手动管理内存new/delete不处理会内存重复释放崩溃Python没有指针、不用手动管内存浅 / 深拷贝是针对可变嵌套对象列表、字典、自定义类实例问题不是内存崩溃而是修改一个另一个跟着变。Python的深浅拷贝主要是用来解决两个对象之间相互影响的问题。直接赋值两个变量指向同一个对象(可变对象)修改其中一个会互相影响。# 直接赋值 nums1 [1, 2, 3] nums2 nums1 print(id(nums1))#2217372066944 print(id(nums2))#2217372066944 nums1[2] 99 print(nums1[2])#99创建nums1赋值给nums2。修改nums[3]的值改为99。解决互相影响的问题可以通过浅拷贝和深拷贝来解决。浅拷贝创建一个新的外层容器但内部元素仍然引用原来的对象。#浅拷贝 import copy nums1 [10, 20, 30, 40] #将nums1浅拷贝赋值黑nums2 nums2 copy.copy(nums1) print(id(nums1))#2590498906368 print(id(nums2))#2590499054720 nums2[3] 99 print(nums1[3])#40 print(nums2[3])#99将nums1进行浅拷贝赋值给nums2。将nums2[3]值修改为99并不会影响nums1[3]。浅拷贝存在的问题嵌套的数据(可变对象)仍然是共享的修改嵌套的数据还是会互相影响。import copy nums1 [10, 20, 30, [40, 50]] nums2 copy.copy(nums1) #地址相同 print(id(nums1[3]))#1516985737472 print(id(nums2[3]))#1516985737472 nums2[3][0] 99 print(nums1[3][0])#99将nums2[3][0]的值修改为99。解决浅拷贝存在的问题使用深拷贝。如果修改的是不可变对象不会存在上面的问题因为会在堆上新创建一个不可变对象然后指向它。深拷贝创建一个新的外层容器并对其内部所有的可变对象进行递归赋值。import copy nums1 [10, 20, 30, [40, 50]] nums2 copy.deepcopy(nums1) # 地址不同 print(id(nums1[3]))#2270013186304 print(id(nums2[3]))#2270013995520 nums2[3][0] 99 print(nums1[3][0])#40 print(nums2[3][0])#99将nums1进行深拷贝赋值给nums2。修改nums[3][0]的值为99。备注深拷贝可以彻底消除数据之间的相互影响。深拷贝遇到【不可变对象】不会复制会直接引用。注意点深拷贝只复制可变对象不可变对象会直接引用。元组中如果只包含不可变对象则深拷贝没有效果。import copy nums1 (10, 20, 30, (40, 50)) nums2 copy.deepcopy(nums1) #地址相同 print(id(nums1))#2022183010768 print(id(nums2))#2022183010768 nums3 (10, 20, 30, [40, 50]) nums4 copy.deepcopy(nums3) #地址不同 print(id(nums3))#2022182910320 print(id(nums4))#2022182910160

相关新闻

最新新闻

科研不懂别死磕!Okbiye AI学术答疑实测|秒解论文、实验、答辩所有难题✅

科研不懂别死磕!Okbiye AI学术答疑实测|秒解论文、实验、答辩所有难题✅

做科研最浪费时间的不是「做得慢」,而是卡住不动、无人可问。 写论文卡章节思路、研究方法不会用、实验数据出错找不到原因、专业术语看不懂、答辩问题不会预判…… 遇到问题只能全网乱搜,答案老旧、错误百出、碎片化严重;请教导师和师兄&a…

2026/7/22 11:17:32
2026论文双检必过攻略!Okbiye AI论文自查|查重+AI痕迹一键预检✅

2026论文双检必过攻略!Okbiye AI论文自查|查重+AI痕迹一键预检✅

今年毕业最大的隐形坑:只查重复率,不查AI痕迹! 很多同学熬完写作、降重、排版,满心以为论文稳了,结果学校双检一出直接傻眼:查重合格,AI生成率超标。 现在的高校检测系统非常智能,…

2026/7/22 11:17:32
06-知识库与RAG实战

06-知识库与RAG实战

Dify 知识库与 RAG 实战 适用版本:Dify Community Edition v1.16.0 面向读者:零基础,想让 AI 基于「自己的资料」回答 阅读时长:约 25 分钟 前置:04-核心概念与基础使用.md、05-工作流编排.md 目标:上传文档…

2026/7/22 11:17:32
外文文献看不懂?翻译软件翻车不断!Okbiye学术翻译实测|精准适配论文写作✅

外文文献看不懂?翻译软件翻车不断!Okbiye学术翻译实测|精准适配论文写作✅

写论文最煎熬的环节,绝对是外文文献研读与翻译。 导师要求论文必须引用近3-5年外文核心文献,提升论文创新性与专业性。但绝大多数同学外语基础薄弱,面对满篇专业术语、长难学术句式的SCI、EI外文文献,完全无从下手。 用普通翻译…

2026/7/22 11:17:31
RocketMQ分布式消息中间件架构与生产实践

RocketMQ分布式消息中间件架构与生产实践

1. RocketMQ核心架构解析RocketMQ作为阿里巴巴开源的分布式消息中间件,其架构设计充分考虑了金融级场景下的高可靠与高性能需求。核心采用发布-订阅模式,由四个关键组件构成:NameServer集群:轻量级服务发现组件,每个节…

2026/7/22 11:17:31
我是你的全能写作助手

我是你的全能写作助手

,只需一句话交代你的想法,我来帮你一键更新文章,开启丝滑的创作体验。

2026/7/22 11:12:31

月新闻