1.要了解深拷贝与浅拷贝,首先要了解对象是怎么赋值的
2.论深拷贝与浅拷贝的影响,要先确定'你'是不可变对象还是可变对象
不可变对象指数值、字符串、元组、不可变集合(frozenset)
可变对象指列表、可变集合(set)、字典(dict)
针对不可变对象使用了深拷贝和浅拷贝,无论是值还是对象地址都是相同的。
针对可变对象使用深拷贝:相当于将a对象的值完全复制了一份给b对象,对象a与对象b的地址值不同,改变对象a的值,对象b的值不会被影响而改变,a与b无关联。不难看出,使用深拷贝会增加内存的使用。
针对可变对象使用浅拷贝:对象a与对象b的地址值不同,改变对象a的值,对象b的值也会随之改变。a与b地址不同指向的值确实相同的,ab有关联。