我有一个最低限度的清单:
some_list = [1,4,6,4,1,7]
是否有内置函数或任何智能解决方案来获取最小值的索引?
result = [0,4]
到目前为止,我是这样做的,但是我希望阅读起来更短/更容易。
min = 10**10
result = []
for i in range(len(some_list)):
if some_list[i] < min:
min = some_list[i]
result = [i]
elif some_list[i] == min:
result.append(i)
您可以尝试这个。
some_list = [1,4,6,4,1,7]
_min=min(some_list)
index=[idx for idx,val in enumerate(some_list) if val==_min]
# [0,4]
In [13]: import numpy as np
In [14]: values = np.array([1,4,6,4,1,7])
In [15]: np.where(values==values.min())
Out[15]: (array([0, 4]),)