深拷贝
- 深拷贝是指源对象与拷贝对象互相独立
- 任何一个对象的改动都不会对另外一个对象造成影响
- 新的变量产生了新的内存地址
方法:numpy.copy()
import numpy as np
x = np.arange(10)
print(x)
print(id(x))
y = np.copy(x)
print(id(y))
x[0] = 1
print(x)
print(y)
[0 1 2 3 4 5 6 7 8 9]
2715666038992
2715666039232
[1 1 2 3 4 5 6 7 8 9]
[0 1 2 3 4 5 6 7 8 9]
浅拷贝
-
浅拷贝是一种简单的拷贝,让几个对象公用一个内存
-
对其中一个变量的值改变,另外一个变量的值也会改变
方法:直接赋值
import numpy as np
x = np.arange(10)
print(x)
print(id(x))
y = x
print(id(y))
x[0] = 1
print(x)
print(y)
[0 1 2 3 4 5 6 7 8 9]
2715666116160
2715666116160
[1 1 2 3 4 5 6 7 8 9]
[1 1 2 3 4 5 6 7 8 9]