安利一个神仙网站Pythontutor,左边实时编辑,右边能够实时看见自己所编写的变量的物理位置的关系,将深拷贝浅拷贝直接可视化。
一、浅拷贝
废话不多说直接上图:

b2变量就是对于a变量的一个浅拷贝,如果我们尝试改变b2变量后面的值,a,b1变量里面的值也会随之变化。

可变元素可以有copy()方法进行浅拷贝,字典也有,集合也有。
所以浅拷贝只是对于对象的第一层的复制。
二、深拷贝
深拷贝需要用一个第三方包

本文通过Pythontutor网站深入浅出地介绍了Python中的浅拷贝和深拷贝概念。使用该网站,可以直观地看到变量之间的关系。浅拷贝仅复制对象的第一层,改变副本会影响原始对象。而深拷贝则创建完全独立的对象副本,修改不会影响原始。文章以实例展示如何进行深拷贝,并强调了copy模块在实现深拷贝中的作用。
安利一个神仙网站Pythontutor,左边实时编辑,右边能够实时看见自己所编写的变量的物理位置的关系,将深拷贝浅拷贝直接可视化。
废话不多说直接上图:

b2变量就是对于a变量的一个浅拷贝,如果我们尝试改变b2变量后面的值,a,b1变量里面的值也会随之变化。

可变元素可以有copy()方法进行浅拷贝,字典也有,集合也有。
所以浅拷贝只是对于对象的第一层的复制。
深拷贝需要用一个第三方包

136
699
1006

被折叠的 条评论
为什么被折叠?