import numpy as np x=np.arange(6).reshape(3,2) for i in np.nditer(x): print(i,end=",")
控制遍历顺序
1 2 3 4 5 6 7
import numpy as np x=np.arange(6).reshape(3,2) for i in np.nditer(x,order='F'): print(i,end=",") /* 0,2,4,1,3,5, */
1 2 3 4 5 6 7
import numpy as np x=np.arange(6).reshape(3,2) for i in np.nditer(x,order='C'): print(i,end=",") /* 0,1,2,3,4,5, */
修改数组中元素的值
1 2 3 4 5 6
import numpy as np x=np.arange(0,60,5).reshape(3,4) print(x) for i in np.nditer(x,op_flags=['readwrite']): i[...]=2*i print(x)
使用外部循环
1 2 3 4 5 6 7
import numpy as np x=np.arange(0,60,5).reshape(3,4) for i in np.nditer(x,flags=['external_loop'],order='F'): print(i,end=',') /* [ 02040],[ 52545],[103050],[153555], */
广播迭代
1 2 3 4 5
import numpy as np x=np.arange(0,60,5).reshape(3,4) b=np.array([1,2,3,4],dtype=int) for i,j in np.nditer([x,b]): print(i,j)
数组操作
修改数组形状
1 2 3 4 5
import numpy as np x=np.arange(0,60,5).reshape(3,4) print(x) for j in x.flat: print(j,end=" ")
反转数组
1 2 3
import numpy as np x=np.arange(0,60,5).reshape(3,4) print(np.transpose(x))