python copy怎么用_如何最简单、通俗地理解Python的拷贝?

① 在python中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象,而只是拷贝了这个对象的引用。1. 直接赋值拷贝,传递对象的引用而已,原始列表改变,被赋值的b也会做相同的改变。

2. copy浅拷贝,如果不包含可变对象,对拷贝对象改变,会改变原始数据;如果包含可变对象,对拷贝对象改变,不会改变原始数据。

3. deepcopy深拷贝,对拷贝对象改变,不会改变原始数据。

② 浅拷贝要看之前的数据是否包含可变对象,没有可变对象就和深拷贝一样;有可变对象的话,浅拷贝后改变里面的可变对象会同时改变原来数据里面的可变对象。

“♥我的笔记,希望对你有帮助♥”