是否有更易读的方式编写Python遍历Numpy数组每个元素的循环?我已经提出了以下代码,但是它看起来很繁琐,而且不太可读:
import numpy as np
arr01 = np.random.randint(1,10,(3,3))
for i in range(0,(np.shape(arr01[0])[0]+1)):
for j in range(0,(np.shape(arr01[1])[0]+1)):
print (arr01[i,j])
我可以使其更加明确,例如:
import numpy as np
arr01 = np.random.randint(1,10,(3,3))
rows = np.shape(arr01[0])[0]
cols = np.shape(arr01[1])[0]
for i in range(0, (rows + 1)):
for j in range(0, (cols + 1)):
print (arr01[i,j])
但是,与其他语言相比,这看起来仍然比较麻烦,即,可以读取VBA中的等效代码(假设已经填充了数组:]]
dim i, j as integer for i = lbound(arr01,1) to ubound(arr01,1) for j = lbound(arr01,2) to ubound(arr01,2) msgBox arr01(i, j) next j next i
非常感谢您的提示和技巧,>>
最诚挚的问候,
J。
是否有更易读的方式编写Python遍历Numpy数组每个元素的循环?我想出了以下代码,但它看起来很繁琐且不易读:import ...
如果不需要索引值,则应使用内置函数nditer
。
for elem in np.nditer(arr01):
print(elem)