import copy a = [1, 2, 3, [4, 5, 6, [7, 8, 9]]] # 浅拷贝 b = copy.copy(a) # 深拷贝 c = copy.deepcopy(a)print(id(a)) print(id(b)) print(id(c))# 修改a list的值 a[0] = 10 a[3].append(2) a[3].append(11111)print(a)# 浅拷贝:直接赋值,默认浅拷贝传递对象的引用而已,原始列表改变,被赋值的b也会做相同的改变 # copy浅拷贝,没有拷贝子对象,所以原始数据改变,子对象会改变 print(b)# 深拷贝:深拷贝,包含对象里面的自对象的拷贝,所以原始对象的改变不会造成深拷贝里任何子元素的改变 print(c)""" 程序运行结果 1642407388992 # a,b,c的id均不一样 1642414166976 1642407337088[10, 2, 3, [4, 5, 6, [7, 8, 9], 2, 11111]] # a,原始数据改变 [1, 2, 3, [4, 5, 6, [7, 8, 9], 2, 11111]] # b,浅拷贝数据也改变 [1, 2, 3, [4, 5, 6, [7, 8, 9]]] # c,深拷贝数据没有发生改变 """
详细解决方案
python深拷贝与浅拷贝
热度:32 发布时间:2023-09-28 05:41:16.0
相关解决方案
- ubuntu9.04上安装mic2 出错 (python setup.py build)
- ubuntu9.04下安装mic2 出错 (python setup.py build),该如何解决
- 请教如何理解JAVA、C++ Perl、PHP、Ruby、Python
- python sybase装配
- python(django框架) + mysql 的编码有关问题,求解
- SAE python web.py bootstrap 开发记要
- 数目字代码把大数据数字口语化(python+js) 数字代码
- python JSON string 的中文有关问题
- python――施用yaml数据格式,PK -> XML,JSON
- Learn Python The Hard Way学习(52) - 开始您的web游戏
- Python 相关有关问题
- 菜鸟,先学JAVA,还是Ruby,python
- 生手之前对编程无概念现在想转这行,想尽快入门,java ,python,net、php、C之间如
- 【大哥大姐】python 操作MS SQL Server 2005 效率
- python serial模块运用
- python scp自动登录解决方法
- 【Python】按行读取文件、IOError: [Errno 22] invalid mode ('a+') or filename,处置文件的换行符
- Python 3.x中使用print函数出现语法异常(SyntaxError: invalid syntax)的原因
- 【Error】Python安装gevent时出错:“致命异常: Python.h:没有那个文件或目录”
- [Python]attributeError:'module' object has no attribute 'dump'
- Python 出错:IndentationError: unexpected indent
- Python“TypeError: 'NoneType' object is not iterable"的缘故
- python in操作挑动 TypeError
- 【Error】Python:SyntaxError: Non-ASCII character '\xe5'解决办法
- python 有什么 步骤可以知道函数或类在哪个文件定义的
- 树莓派学习笔记——Python SQLite安插温度记录
- Python 将数组转换为 Wav
- Python:文件格式不正确
- Python-从tkinter脚本连接到远程主机
- 如何在 Bash 的 python 解释器中运行 python 脚本