位置: 编程技术 - 正文

深入理解python中的浅拷贝和深拷贝(浅谈python)

编辑:rootadmin

推荐整理分享深入理解python中的浅拷贝和深拷贝(浅谈python),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:深入理解python特性,深入理解python特性,python深入浅出,python深入浅出,深入python3,python深入浅出,python深入浅出,深入python3,内容如对您有帮助,希望把文章链接给更多的朋友!

在讲什么是深浅拷贝之前,我们先来看这样一个现象:

为什么我只对b进行修改,却影响到了a呢?看过我在之前的文章中就说过:序列中保存的都是内存的引用。

所以,当我们通过b去修改里面的空列表的时候,其实就是修改内存中的同一个对象,所以会影响到a。

代码验证无误,所以虽然a和b是两个不同的对象,但是里面的引用都是一样的。这就是所谓新的对象,旧的内容。

但是,浅拷贝还不仅如此,看下面:

这又是怎么回事呢?

看过我在python变量赋值说明的同学会知道:对于字符串、数字等不可变的数据类型,修改就相当于重新赋值。在这里就相当于刷新引用。

代码验证一下:

深入理解python中的浅拷贝和深拷贝(浅谈python)

看来是正确的。

上面讲的这些就是浅拷贝,总结起来,浅拷贝只是拷贝了一系列引用,当我们在拷贝出来的对象对可修改的数据类型进行修改的时候,并没有改变引用,所以会影响原对象。而对不可修改的对象进行修改的是,则是新建了对象,刷新了引用,所以和原对象的引用不同,结果也就不同。

创建浅拷贝的方法:

1.切片操作

2.使用list()工厂函数新建对象。( b = list(a) )

那么深拷贝不就是将里面引用的对象重新创建了一遍并生成了一个新的一系列引用。

基本上是这样的,但是对于字符串、数字等不可修改的对象来说,重新创建一份似乎有点浪费内存,反正你到时要修改的时候都是新建对象,刷新引用的。所以还用原来的引用也无所谓,还能达到节省内存的目的。

看下代码验证:

验证正确。

深拷贝的创建:

1.正如代码示例用一样,只能通过内置的copy模块的deepcopy()方法创建。

好了,关于深浅拷贝的问题就先说到这里,有什么错误或需要补充的以后会继续。

以上这篇深入理解python中的浅拷贝和深拷贝就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

Windows下Python使用Pandas模块操作Excel文件的教程 安装Python环境ANACONDA是一个Python的发行版本,包含了多个Python最常用的库,其中就包括了数据分析中需要经常使用到的Numpy和Pandas等。更重要的是,不

Windows中安装使用Virtualenv来创建独立Python环境 0、什么时候会用到virtualenv?假设系统中的两个应用,其中A应用对库LibFoo的版本要求为1,而B应用对同一个库LibFoo的版本要求为2,两个应用对同一个库

python语言使用技巧分享 一在写之前最好指定python的路径:#!/usr/bin/pythonpython在linux中需要添加编码方式:以免出现中文乱码#-*-coding:UTF-8?*-二在各类语言中,python应该是最会利用

标签: 浅谈python

本文链接地址:https://www.jiuchutong.com/biancheng/386926.html 转载请保留说明!

上一篇:浅谈Python的文件类型(python中的文件)

下一篇:Windows下Python使用Pandas模块操作Excel文件的教程(python win10)

  • 应交税费负数调整到其他流动资产
  • 企业间无偿划转资产,非关联方经营
  • 所有应收账款是否均已记录
  • 横幅属于什么发票范围
  • 投资子公司亏损如何入账
  • 融资租赁设备增值税怎样抵扣
  • 专票手工认证
  • 增值税计算方式举例
  • 购进环保节能设备如何抵扣进项税
  • 应收款抹零计入什么会计科目
  • 无形资产出售收入属于营业收入吗
  • 机关单位伙食
  • 跨年冲销营业外支出
  • 定额发票上盖什么章
  • 对方收到发票不付款怎么办
  • 文化事业建设费减免政策
  • 查询税务信用评级
  • 银行账户基本户是什么意思
  • 交社保公积金需要劳动合同吗
  • 代开专票不满10万的要交附加吗?
  • 企业所得税投资收益纳税调整
  • 交上年企业所得税怎么做会计分录
  • 软件开发行业的现状
  • 棚户区改造贷款管理办法
  • macbookpro安装mysql
  • php如何实现多进程
  • PHP:php_strip_whitespace()的用法_misc函数
  • 有进项没销项怎么处理,可以结转成本吗
  • 在建工程进项税额
  • 无法连接到你的相机,请重启手机
  • php字段
  • vue3中使用require
  • uni-app 怎么实现页面不跳转依旧可以传数据
  • Yii2中添加全局函数的方法分析
  • 买税控盘的钱怎么做账
  • 工业企业制造费用占比
  • 物流公司挂靠会计处理
  • 企业购进的商品是什么
  • vue3定义全局变量
  • vue 组件
  • js生成随机数字和字母组合
  • c语言中数组越界
  • 如何更改电子税务局办税人员
  • 跨年度的利息收入怎么做账
  • 单位交的那部分医保去哪了
  • 要求供应商赔偿说明函范本
  • 补充医疗相关政策
  • 2020年维修基金怎么交
  • 公司之间的往来账怎么做
  • SQL Server 2005 镜像构建手册(sql2005数据库同步镜像方案)
  • MySQL中使用命令行查看二进制文件
  • 电影院租金一般多少为合理
  • 建筑业有收入没有成本
  • 内账收入按含税还是不含税入
  • 没有进项发票开具销项发票怎么做账?
  • 企业微信收款如何交税
  • 进料料件复出可以给第三方吗
  • 公司销售二手车怎么申报增值税
  • 无形资产计入待摊费用
  • sql server日期相减
  • 分享sql日期时间格式
  • win7 32位旗舰版电脑城下载
  • win7自带防护软件
  • win8还能用吗
  • freebsd版本选择
  • 电脑显示windowsxp不能进入桌面
  • win7怎么免费升级win11
  • centos设置永不待机
  • win7系统不能用了?
  • linux常用命令grep
  • win7系统安装软件乱码
  • Win10年度更新将统一Insider与Xbox One预览体验
  • linux查看系统配置内存大小
  • unity urp 性能
  • ubuntu用root运行
  • 一键清除照片上多余的人
  • our与my的区别
  • js实现鼠标事件
  • rom开发是做什么的
  • 安徽省合肥市地震多少级
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设