【发布时间】:2018-10-22 05:01:49
【问题描述】:
您好,我想查找整数数组的最大值和最小值的第一个索引。
如果有重复值,我的代码会返回所有索引...
A= [1,1,8,7,5,9,6,9]
def minmaxloc(num_list):
for i,y in enumerate(num_list):
if y ==max(num_list) or y==min(num_list):
print i
minmaxloc(A)
输出: 0 1 5 7
我想要什么: (0,5)
感谢您的帮助。
【问题讨论】:
-
import numpy as np; (np.argmin(A),np.argmax(A)) -
您所指出的问题中的最佳答案并不是那么好,因为它可能会扫描阵列两次。第二个答案stackoverflow.com/a/2474238/500207 在这方面更好。理想情况下,您可以在一次扫描中计算最大值和最小值,但 Python 或 Numpy 都没有提供
minmax:(