Python深拷贝浅拷贝图文示例清晰整理

作者:linkenzhou 时间:2022-05-05 11:26:40 

python共有两种浅拷贝的方法,一个是python的内置函数copy(),另一个是copy模块中的copy.copy()。

python的六种数据类型(数字、字符串、列表、元组、字典、集合)中,数字、字符串、元组这三个不可变类型是没有copy()这个属性的,但是可以用copy.copy()进行浅复制。

本文以copy模块中的copy()和deepcopy()来说说两者的区别。

Python深拷贝浅拷贝图文示例清晰整理

Python深拷贝浅拷贝图文示例清晰整理

如上图所示,浅拷贝只拷贝了父对象,不会拷贝里面的子对象。如果拷贝的数据改变了父对象中的值,是不会影响源数据中父对象的值。反之如果拷贝的数据改变了子对象的值,是会影响源数据中子对象的值的。

Python深拷贝浅拷贝图文示例清晰整理

如上图,相比于浅拷贝,深拷贝是将父对象、子对象一起复制出来,且重新开辟了内存来存储。而且对于复制出来的数据,修改父对象、子对象都不会影响源数据。

两者相比来说,浅拷贝比较省内存,而深拷贝数据更安全,修改的时候不会影响源数据,不会出现莫名其妙的bug。

来源:https://www.cnblogs.com/zy0209/p/15976813.html

标签:Python,深拷贝,浅拷贝
0
投稿

猜你喜欢

  • 在阿里云的CentOS环境中安装配置MySQL的教程

    2024-01-13 13:13:26
  • 解决在keras中使用model.save()函数保存模型失败的问题

    2021-09-12 17:32:41
  • perl AnyEvent简单介绍和入门知识

    2022-09-22 03:10:50
  • 不能忽略c#中的using和as操作符的用处

    2024-03-23 08:08:41
  • python时间与Unix时间戳相互转换方法详解

    2023-07-11 02:09:12
  • 基于Keras的格式化输出Loss实现方式

    2021-10-20 20:44:00
  • 高效的SQLSERVER分页查询(推荐)

    2024-01-16 09:54:52
  • OpenCV-Python实现通用形态学函数

    2022-02-13 18:10:33
  • 利用SQL Server复制技术实现数据同步更新

    2009-10-23 14:11:00
  • CSS框架的相关汇总(CSS Frameworks)

    2008-04-02 12:00:00
  • win10环境下配置vscode python开发环境的教程详解

    2022-09-06 21:19:49
  • Python之list对应元素求和的方法

    2022-12-30 20:18:00
  • 如何用python批量发送工资条邮件

    2021-03-07 10:53:09
  • 用css+Javascript实现扫描线效果图片

    2007-11-08 19:12:00
  • Vue中强制组件重新渲染的正确方法

    2024-05-03 15:11:13
  • Python双版本计算器详解

    2021-03-27 13:22:24
  • python 实现读取csv数据,分类求和 再写进 csv

    2023-02-02 00:47:20
  • 多个应用共存的Django配置方法

    2021-06-28 03:25:37
  • Python反爬虫技术之防止IP地址被封杀的讲解

    2022-05-09 10:44:12
  • PHP实现视频文件上传完整实例

    2024-06-05 09:46:55
  • asp之家 网络编程 m.aspxhome.com