python中浅拷贝、深拷贝

news/2024/9/21 14:20:49 标签: python

浅拷贝 copy()

浅拷贝会创建一个新对象,但它只复制顶层的内容。如果对象是嵌套结构(如列表中的列表),内层对象仍然是共享的。

python">import copy

raw_node = [1, [2, 3], 4]
new_node = copy.copy(raw_node)  # 只进行浅拷贝

new_node[0] = 10                # 修改顶层,不影响raw_node
new_node[1][0] = 20             # 修改嵌套部分,会影响raw_node

print("raw_node:", raw_node) # [1, [20, 3], 4]
print("new_node:", new_node) # [10, [20, 3], 4]

深拷贝deepcopy()

深拷贝会递归地复制对象的所有层次,确保没有任何共享的部分。这适用于嵌套结构的独立复制。

python">import copy

raw_node = [1, [2, 3], 4]
new_node = copy.deepcopy(raw_node)  # 进行深拷贝

new_node[0] = 10                    # 修改顶层,不影响raw_node
new_node[1][0] = 20                 # 修改嵌套部分,也不影响raw_node

print("raw_node:", raw_node) # [1, [2, 3], 4]
print("new_node:", new_node) # [10, [20, 3], 4]

对于复杂的嵌套结构,建议使用深拷贝,而简单的结构可以使用浅拷贝或切片.


http://www.niftyadmin.cn/n/5668924.html

相关文章

搜索引擎onesearch3实现解释和升级到Elasticsearch v8系列(二)-索引

场景 首先介绍测试的场景,本文schema定义 pdm文档索引,包括nested,扩展字段,文档属性扩展,其中_content字段是组件保留字段,支持文本内容 索引 索引服务索引的操作,包括构建,put …

统计项目代码行数工具—cloc

目录 引言一、cloc简介二、cloc安装三、cloc使用四、参考博客 引言 项目开发完成,想要查看自己项目的代码行数,强烈推荐一款非常好用的命令行工具-cloc。 一、cloc简介 只需要通过命令行的方式运行cloc,就可以得知指定文件代码行数、注释函…

7000长文:一文读懂Agent,大模型的下一站

什么是Agent?为什么是Agent? 大模型除了Chat外还能做什么用? 当我们将大型模型视为“核心调度器“时,它就变成了我们的Agent。借助任务规划、记忆及外部工具等能力,大型模型能够识别出应该执行的任务以及执行方式&…

Git使用教程-将idea本地文件配置到gitte上的保姆级别教程

🤹‍♀️潜意识起点:个人主页 🎙座右铭:得之坦然,失之淡然。 💎擅长领域:前端 是的,我需要您的: 🧡点赞❤️关注💙收藏💛 是我持…

vue 入门一

参考&#xff1a;丁丁的哔哩哔哩 1.使用vue 1.1 使用CDN的方式使用Vue mount和<div id"counter">关联起来 1.2 vue中的createApp import { createApp } from "vue"; import App from "./App.vue"; createApp(App).mount("#app&qu…

文件上传js代码

大家好&#xff0c;很久没更新了&#xff0c;今天空了&#xff0c;记录一下文件上传js代码。(自己搭建的网站&#xff0c;演示学习一下这种漏洞&#xff0c;不要做违法的事情&#xff01;&#xff01;&#xff01;) 一般文件上传的话都是奔着getshell去的&#xff0c;但是一般…

[每日一练]利用pivot函数自定义数据透视表

#该题目来源于力扣&#xff1a; 2889. 数据重塑&#xff1a;透视 - 力扣&#xff08;LeetCode&#xff09; 题目要求&#xff1a; DataFrame weather --------------------- | Column Name | Type | --------------------- | city | object | | month | obje…

【图文详解】什么是微服务?什么是SpringCloud?

目录 一.认识微服务架构 ▐ 微服务带来的挑战 二.微服务解决方案SpringCloud ▐ SpringCloud的版本 ▐ SpringCloud和SpringBoot的关系 ▐ SpringCloud实现方案 Spring Cloud Netfix Spring Cloud Alibaba ▐ Spring Cloud 实现对比 在入门Spring Cloud 之前&#xff…