Python,numpy深拷贝与浅拷贝的区别

Python,numpy深拷贝与浅拷贝的区别

浅拷贝:B复制A,A改变,B改变
深拷贝:B复制A,A改变,B改变

Python与numpy浅拷贝区别

python:原生浅拷贝只拷贝了对象的表层(第一层),并没有对所有层次数据进行拷贝,对于其他层次数据属于引用性质。

  • 对于可变类型数据进行浅拷贝时,会正常进行。
  • 对于不可变类型数据进行浅拷贝时,仅仅是内存意义上的指向。

numpy:浅拷贝之后的对象并没有开辟新的内存空间。例:B复制A,A变,B变。

Python与numpy深拷贝区别

python:原生深拷贝,是对原数据对象,所有层次的拷贝,并开辟新的内存空间保存新的对象,当修改其中某一对象时,另一对象不受影响。
numpy:深拷贝本质上和python原生深拷贝是类似的,都会开辟新的内存空间去保存深拷贝出来的对象,当修改其中某一对象时,另一对象不受影响。

你可能感兴趣的:(python,numpy)