安利一个神仙网站Pythontutor,左边实时编辑,右边能够实时看见自己所编写的变量的物理位置的关系,将深拷贝浅拷贝直接可视化。
一、浅拷贝
废话不多说直接上图:
b2变量就是对于a变量的一个浅拷贝,如果我们尝试改变b2变量后面的值,a,b1变量里面的值也会随之变化。
可变元素可以有copy()方法进行浅拷贝,字典也有,集合也有。
所以浅拷贝只是对于对象的第一层的复制。
二、深拷贝
深拷贝需要用一个第三方包
安利一个神仙网站Pythontutor,左边实时编辑,右边能够实时看见自己所编写的变量的物理位置的关系,将深拷贝浅拷贝直接可视化。
废话不多说直接上图:
b2变量就是对于a变量的一个浅拷贝,如果我们尝试改变b2变量后面的值,a,b1变量里面的值也会随之变化。
可变元素可以有copy()方法进行浅拷贝,字典也有,集合也有。
所以浅拷贝只是对于对象的第一层的复制。
深拷贝需要用一个第三方包