1、直接赋值

默认浅拷贝传递对象的引用而已,原始列表改变,被赋值的b也会做相同的改变;

直接用等号赋值的话,python解析器机制可能是为了节省内存之类的会把指针指向同一个位置,也就是两个变量完全一样的,像取了一个别名。

例如:

python 直接赋值 深浅拷贝_浅拷贝

 

2、copy浅拷贝

浅拷贝:拷贝父对象,不会拷贝对象内部的子对象。如果子对象发生变化,浅拷贝也是会跟着改变的。

例如:

python 直接赋值 深浅拷贝_浅拷贝_02

  

3、深拷贝

深拷贝:完全拷贝父对象和子对象,原来的不管怎么变都和深拷贝后的内容没关系。

例如:

python 直接赋值 深浅拷贝_python 直接赋值 深浅拷贝_03

 

 

python 直接赋值 深浅拷贝_赋值_04