数组的复制copy
1 #导入numpy模块 2 import numpy as np 3 #创建一个二维数组 4 a = np.arange(1,13).reshape((3,4)) 5 print(a) 6 #对a进行切片处理,获取第一二行,第一二列 7 sub_a = a[:2,:2] 8 print(sub_a) 9 #对sub_a中第一行第一列的值进行修改 10 sub_a[0][0] = 100 11 print(sub_a) 12 print(a) 13 #通过切片可以获取新数组,即使赋值给新的变量,但还是原来数组的试图。 14 #如果对切片数组中元素的值进行修改会影响原来的数组。 15 16 #达到修改子数组不影响原来数组,可以用copy方法实现 17 sub_aa = np.copy(a[:2,:2]) #深拷贝 18 sub_aa[0,0] = 200 19 print(sub_aa) 20 print(a)
1 [[ 1 2 3 4] 2 [ 5 6 7 8] 3 [ 9 10 11 12]] 4 [[1 2] 5 [5 6]] 6 [[100 2] 7 [ 5 6]] 8 [[100 2 3 4] 9 [ 5 6 7 8] 10 [ 9 10 11 12]] 11 [[200 2] 12 [ 5 6]] 13 [[100 2 3 4] 14 [ 5 6 7 8] 15 [ 9 10 11 12]]
正是江南好风景