马春杰杰 Exit Reader Mode

关于Python中字典的赋值、浅拷贝、深拷贝

竟然把这个搞错了。。备份一下:

直接赋值:

两者直接赋值,相当于b是a的引用,所以当a发生了变化时,b也相应变化

浅拷贝

浅拷贝只是复制了父目录的数据,如果a字典里的值都是非容器类型数据,那么浅拷贝就等于拷贝了一份a,如果a里面的值包含容器类型数据,那么浅拷贝则相当于对容器类型数据的一个引用。

也就是说,a["xxx"]=[1,2],此时如果改变a["xxx"]的值,b也会相应改变。但是对于a["qqq"]=2,此时如果改变a["qqq"]的值,则b不会变化。

深拷贝

深拷贝就是完全复制一份a的数据,两者之间是完全独立的。不会相互影响。

本文最后更新于2021年10月31日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!