位置: 编程技术 - 正文

深入理解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)

  • 劳务派遣公司需要给员工缴纳社保吗
  • 银行应发贷款和实际收到的贷款为什么不一致
  • 车船税和保险在一起怎么报销
  • 员工出差自驾怎么看待
  • 总分机构账务处理
  • 住房公积金个人和单位各承担多少
  • 买卖金融商品应交增值税计算
  • 收购企业账务处理
  • 在建工程的计算公式
  • 政策减免是什么意思
  • 新公司第一个月报税怎么弄
  • 月末计提税金数据从哪得来的
  • 支付教育培训费
  • 营业成本包括哪些会计科目
  • 专用发票右上角的数字表示什么
  • 退回的费用如何入账
  • 子网掩码和默认网关怎么填
  • php语言之mysql操作
  • Win10 20H1/20H2 KB5001391补丁今日发布(内附下载)
  • mrmactl.exe
  • 新购固定资产账务处理
  • 材料发票入账
  • 个人所得税如何计算
  • 兰溪园林绿化养护
  • ros 2
  • 税款差0.05是怎么处理
  • 华硕自带win10系统
  • 微信红包 python
  • 材料成本差异的会计分录
  • 2023前端面试题目
  • passwd -s命令
  • 发票公司名字开错,需要更改红字发票上的名字吗
  • php clob
  • 办理车辆购置税流程
  • 开具农产品收购发票需要什么资料
  • 旅游费怎么记账
  • 帝国cms8.0
  • 盘盈材料会计分录
  • 企业注销库存怎么处理
  • 加速折旧法是指在固定资产使用的早期少提折旧
  • 招待费专票不可以抵扣
  • db2 798
  • 建筑企业属于什么类型
  • 金税四期对企业的好处
  • 营业执照办理税务登记需要什么资料
  • 政府补助的内容
  • 企业预缴所得税年末应该怎么交税
  • 去年城建税多计提了怎么办
  • 公司过账的款项怎么入账
  • 服务业暂估成本怎样做账?
  • 实缴增值税比计提增值税少怎么做账务处理
  • 企业土地补偿款如何做账
  • 出口额和外汇收入
  • 社保滞纳金可以免除吗
  • 单位的收入是刷卡怎么做账?
  • 坏账准备具有什么功能
  • 代开发票的弊端是如何体现的?
  • 企业名称变更后税务变更需要什么资料
  • 进项税额抵扣好还是不抵扣好
  • 建筑公司的会计好做吗
  • sqlserver 索引
  • windows 配置
  • mysql行锁的作用
  • linux 修复系统
  • mplugin.exe是什么
  • linux内核命名
  • 在linux系统中创建文件的命令
  • jquery 动态添加列表元素
  • 教女朋友学英语
  • 深入理解ts
  • Unity for Absolute Beginners(二)
  • jquery点击跳转页面
  • 开的发票怎么抽奖
  • 江苏囯税电子
  • 深圳市税务局好考吗
  • 国税发票真伪查询手机怎么查
  • 厦门市无纸化税务局官网
  • 长沙房产税如何征收
  • 区里的地税局局长是谁
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设