print (sorted([index for index in range(10) if arr[index] > 0.5], key=lambda index: arr[index]))
Это дает список python. Это работает, потому что [index for ... if arr[index] > 0.5]
является списком, который возвращает индексы с их значениями> 0,5, а key
определяет значение, по которому вы хотите сортировать (фактическое значение arr[index]
вместо самого индекса)
Также после исследования некоторых numpy вещей, я думаю, что это будет работать также
import numpy as np
x = np.array([0.2, 0.8, 0.6])
print ([index for index in np.argsort(x) if index in np.where(x > 0.5)[0]]) # [2, 1]
Замените x
вашим случайным массивом
И, наконец, я вас понимаю хотел убывать в порядке, в то время как оба моих кода в порядке возрастания хаха