赋值-浅拷贝-深拷贝
1.赋值:
对象赋值的本质是对象之间引用的传递,即多个对象指向同一内存空间。
2.浅拷贝:
浅拷贝是对一个对象的顶层数据的拷贝(如果拷贝嵌套对象,只能拷贝顶层,底层数据还是引用。
import copy
对象.copy.copy(目标对象)
3.深拷贝:
深拷贝是对一个对象的所有层次的拷贝,保证数据的独立性。
import copy
对象.copy.deepcopy(目标对象)
注:如果拷贝对象为不可变类型,深浅拷贝都会引用地址,如果是嵌套类型,浅拷贝只关心顶层的类型,顶层为不可变类型,就引用地址,而深拷贝,必须对象类型都为不可变类型,才可以引用地址,否则会重新开辟新空间才拷贝数据。