位置: IT常识 - 正文

Python深浅拷贝是什么(python深拷贝与浅拷贝区别)

编辑:rootadmin

推荐整理分享Python深浅拷贝是什么(python深拷贝与浅拷贝区别),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python深拷贝和浅拷贝详解,python深拷贝和浅拷贝应用场景,python中深浅拷贝,python深拷贝和浅拷贝应用场景,python深拷贝浅拷贝和赋值,python深拷贝浅拷贝和赋值,python深拷贝浅拷贝,python中深浅拷贝,内容如对您有帮助,希望把文章链接给更多的朋友!

一、浅拷贝

浅拷贝是对一个对象的顶层拷贝,通俗地讲就是:拷贝了引用,并没有拷贝内容。

a=[1,2,3]print(id(a))b=aprint(b)print(id(b))a.append(4)print(a)print(b)

运行结果为:

1965053928072[1,2,3]1965053928072[1,2,3,4][1,2,3,4]

二、深拷贝

深拷贝是对于一个对象所有层次的拷贝,重新开辟内存地址。

importcopya=[1,2,3]print(id(a))#使用copy模块b=copy.deepcopy(a)#打印b的内存地址print(id(b))a.append(4)print(a)print(b)

运行结果为:

20351579696722035158105992[1,2,3,4][1,2,3]

相关推荐:《Python视频教程》

三、深浅拷贝对比

importcopya=[1,2,3]b=[4,5,6]c=[a,b]d=c#直接赋值,浅拷贝print("c的内存地址为:%s"%id(c))print("d的内存地址为:%s"%id(d))#使用copy模块#深拷贝,重新开辟内存,并内容独立e=copy.deepcopy(c)#深拷贝,重新开辟内存,但是新内容里面仍保存原来的引用f=copy.copy(c)#打印e,f的地址print("e的内存地址为:%s"%id(e))print("f的内存地址为:%s"%id(f))#改变a的值a.append(44)#打印a,b,c,d,e,fprint("a=%s"%a)print("b=%s"%b)print("c=%s"%c)print("d=%s"%d)print("e=%s"%e)print("f=%s"%f)Python深浅拷贝是什么(python深拷贝与浅拷贝区别)

运行结果为:

c的内存地址为:2514746494856d的内存地址为:2514746494856e的内存地址为:2514746494920f的内存地址为:2514746494664a=[1,2,3,44]b=[4,5,6]c=[[1,2,3,44],[4,5,6]]d=[[1,2,3,44],[4,5,6]]e=[[1,2,3],[4,5,6]]f=[[1,2,3,44],[4,5,6]]

说明:

1.c和d的内存地址一样,说明是浅拷贝,两个引用指向的是同一块内存。

2.c,e,f内存地址不一样,说明e和f都是深拷贝,都重新开辟的内存地址。

3.在a追加了元素44之后,打印的e中并有追加44,说明深拷贝,内容独立。

4.在a追加了元素44之后,打印的f中也追加44,说明f也重新开辟了内存,但是新内容里面保存的是原来的引用。

四、copy对可变和不可变对象的不同

1、可变类型使用copy

importcopya=[1,2,3]b=copy.copy(a)print(id(a))print(id(b))a.append(4)print(a)print(b)

运行结果为:

16266777178321626677715784[1,2,3,4][1,2,3]

2、不可变类型使用copy

importcopya=(1,2,3)b=copy.copy(a)print(id(a))print(id(b))

运行结果为:

20434442807042043444280704

总结:

简单的赋值是浅拷贝。

copy模块里面的copy()函数可以做一层深拷贝,虽然重新开辟了新的内存,但新内存里面仍然存放得是原来的引用。

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

上一篇:dedecms织梦的性能选项与其它选项的设置方法(织梦是什么框架开发的)

下一篇:python logging日志的禁用(python中的logging记录日志)

  • 钉钉直播上课怎么发语音(钉钉直播上课怎么关闭麦克风)

    钉钉直播上课怎么发语音(钉钉直播上课怎么关闭麦克风)

  • 手机千牛改店铺名字(手机千牛店铺怎么改店铺名字)

    手机千牛改店铺名字(手机千牛店铺怎么改店铺名字)

  • 怎么看微信直播(怎么看微信直播间在线人数)

    怎么看微信直播(怎么看微信直播间在线人数)

  • 苹果x下面两个喇叭都响吗

    苹果x下面两个喇叭都响吗

  • 如何下拉数字不变(怎么设置数字下拉不变化)

    如何下拉数字不变(怎么设置数字下拉不变化)

  • 淘宝电商是什么工作(淘宝电商是什么时候开始的)

    淘宝电商是什么工作(淘宝电商是什么时候开始的)

  • 局域网ping不通网关(局域网ping不通ip地址的原因)

    局域网ping不通网关(局域网ping不通ip地址的原因)

  • 蓝牙耳机一个声音大一个声音小(蓝牙耳机一个声音特别小)

    蓝牙耳机一个声音大一个声音小(蓝牙耳机一个声音特别小)

  • 个人微信公众号有什么用(个人微信公众号要交钱吗)

    个人微信公众号有什么用(个人微信公众号要交钱吗)

  • iphone11相机曝光怎么调(iPhone11相机曝光调整设置)

    iphone11相机曝光怎么调(iPhone11相机曝光调整设置)

  • 苹果手机怎么查看黑名单上的人打来的电话(苹果手机怎么查以前的通话记录)

    苹果手机怎么查看黑名单上的人打来的电话(苹果手机怎么查以前的通话记录)

  • vivo手机怎么设置永不息屏(vivo手机怎么设置呼叫转移)

    vivo手机怎么设置永不息屏(vivo手机怎么设置呼叫转移)

  • 快手直播伴侣闪退严重(快手直播伴侣闪电购)

    快手直播伴侣闪退严重(快手直播伴侣闪电购)

  • 淘宝号取消实名认证(淘宝号取消实名怎么弄)

    淘宝号取消实名认证(淘宝号取消实名怎么弄)

  • 手机怎么更换ip地址

    手机怎么更换ip地址

  • 快手怎么突然不能直播了(快手怎么突然不能搜索视频了)

    快手怎么突然不能直播了(快手怎么突然不能搜索视频了)

  • 我的淘宝流量哪里来的(淘宝流量数据在哪看)

    我的淘宝流量哪里来的(淘宝流量数据在哪看)

  • 荣耀20怎么关闭后台程序(荣耀20怎么关闭系统更新通知)

    荣耀20怎么关闭后台程序(荣耀20怎么关闭系统更新通知)

  • 小米手机怎么补虚电(小米手机怎么补电100%)

    小米手机怎么补虚电(小米手机怎么补电100%)

  • 华为nova5支持无线投屏吗(华为nova5支持无线充电器吗)

    华为nova5支持无线投屏吗(华为nova5支持无线充电器吗)

  • 蓝牙耳机几秒钟滴一声(蓝牙耳机几秒钟就没电了)

    蓝牙耳机几秒钟滴一声(蓝牙耳机几秒钟就没电了)

  • 锯齿国家森林里的海狸坝,爱达荷州 (© Charles Knowles/Alamy)(森林抗锯齿)

    锯齿国家森林里的海狸坝,爱达荷州 (© Charles Knowles/Alamy)(森林抗锯齿)

  • Selenium.Webdriver最新语法教程(附Chrome实例演示)

    Selenium.Webdriver最新语法教程(附Chrome实例演示)

  • 前端面试题整理——webpack相关考点(前端面试题汇总.pdf)

    前端面试题整理——webpack相关考点(前端面试题汇总.pdf)

  • JustNews-5.2.2完美开心破解版-WordPress资讯博客主题免费下载(完美ui)

    JustNews-5.2.2完美开心破解版-WordPress资讯博客主题免费下载(完美ui)

  • 核定征收需要缴税吗
  • 小规模企业增值税怎么申报
  • 收入纳税数据是什么意思
  • 运费增值税税率有5吗
  • 厂区地面硬化属于土建还是市政
  • 汇算清缴退款怎么入账
  • 款项已付发票未到,怎么做凭证
  • 为什么生产车间地板是绿色的
  • 红字信息表跨月撤销有什么影响吗
  • 经营范围预付卡是什么
  • 保证金利息收入怎么算
  • 开了负数发票增值税申报表怎么填
  • 同一控制企业合并的特征包括
  • 一般纳税人销售使用过的固定资产
  • 汇算清缴业务招待费调整分录
  • 隐名股东违法吗
  • 专票上没写开户行合规吗
  • 股东债权转资本公积利和弊
  • 外贸企业购进货物出口后,应退消费税应当贷记
  • 超市收取的返利的税收处理
  • 所得税费用什么时候结转
  • 收到的劳务费发票可以抵扣吗
  • 版权许可授权书
  • 清华同方bios通用密码(thtfpc)
  • macos big sur更新后能改回来吗
  • 服务业结转成本与收入如何配比
  • windows11测试版升级正式版
  • scards32.exe - scards32是什么进程 有什么用
  • php ftp功能
  • 酒店需要的原材料和包装费有哪些
  • 原始凭证的分类依据有哪些?分别能分为哪些类型?
  • 建筑企业预缴企业所得税怎么计算
  • 海浪冲击着海岸
  • react keepalive
  • 销售产品消费税计入什么科目
  • torch.nn.Conv3d
  • win11更新71
  • 买税盘的会计分录
  • 个体工商户季报还是月报
  • 金税盘开票系统复核人员设置在哪里
  • 企业应收账款的主要内容
  • 为什么营业成本比营业收入大的时候没有计提减值准备呢
  • 智能手机登陆信息怎么删除
  • 公益性捐赠支出纳税调整
  • sql server应用
  • 本年利润贷方余额表示盈利还是亏损
  • 合并报表中的抵损益
  • 发票开9个点
  • 企业福利费账务处理
  • 金税四期的政策
  • 库存商品怎么结转收入
  • 房地产企业实际发生的税金及附加
  • 现金日记账每月都要写期初余额吗
  • 个体户能开增票吗?
  • 事业单位非税收入帐务处理
  • 制造费用月末怎么结转到生产成本
  • 股权投资如何记账
  • 销售部门交通费计入什么费用
  • 其他综合收益 综合收益
  • 生育津贴申请流程
  • sql搜索字段名
  • win8系统怎么安装微信
  • freebsd 编译
  • mac桌面应用
  • webtrapnt.exe - webtrapnt进程是什么意思
  • winfs.exe - winfs是什么进程
  • win8使用教程和技能
  • win10 edge浏览器怎样添加信任站点
  • 菜单按钮是什么
  • android 开发 教程
  • jquery实现图片懒加载
  • python标准库函数有哪些
  • javascript中的类型转换
  • jquery返回顶部
  • js中top/parent/frame概述及案例应用
  • 怎样用python
  • 使用JQuery中的trim()方法去掉前后空格
  • jquery修改href
  • 沙石开发票
  • 重庆外经证网上报验流程及时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设