day3-->深浅拷贝
import copy #浅拷贝 #copy.copy() #深拷贝 #copy.deepcopy() #赋值 #a = '123' #b = a a1 = 123123 a2 = 123123 #查看 变量的内存地址 print(id(a1)) print(id(a2)) a3 = a1 print(id(a3)) #这里看到 通过 赋值 他们永远用的都是同一个内存地址 #下面看一个 浅拷贝,与上面的内存地址 是 同一个内存地址 a4 = copy.copy(a3) print(id(a4))
深浅拷贝应用
dic = { "cpu:":[80,], "mem:":[80,], "disk:":[80] } # print("原来:",dic) new_dic = copy.copy(dic) #浅拷贝 修改 cpu 的第 0个元素 修改成 50 new_dic['cpu:'][0] = 50 print("原修改后::",dic) #正常来说 修改后的 只是修改了新的 new_dic 但是这里看到 修改后 原来的 dic 的cpu 的值 也被修改了 print("new修改后:",new_dic) #输出: # 原修改后:: {'cpu:': [50], 'mem:': [80], 'disk:': [80]} # 修改后: {'cpu:': [50], 'mem:': [80], 'disk:': [80]} ##深拷贝 修改 cpu 的第 0个元素 修改成 50 new_dic = copy.deepcopy(dic) new_dic['cpu:'][0] = 50 print("原修改后:",dic) print("new修改后:",new_dic) #输出: # {'cpu:': [80], 'mem:': [80], 'disk:': [80]} # {'cpu:': [50], 'mem:': [80], 'disk:': [80]}
本文来自博客园,作者:IT老登,转载请注明原文链接:https://www.cnblogs.com/nb-blog/p/6425282.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)