Ниже приведено решение с использованием цикла for
:
outlist = []
for i in range(len(B)):
lst = []
for j in range(len(B[i])):
lst.append(A[i][B[i][j]])
outlist.append(lst)
outarray = np.asarray(outlist)
print(outarray)
Выше также может быть написано в форме более сжатого списка:
outlist = [ [A[i][B[i][j]] for j in range(len(B[i]))]
for i in range(len(B)) ]
outarray = np.asarray(outlist)
print(outarray)
Выход:
[[2 2 4 5]
[1 9 8 6]
[2 0 7 8]]