Skip to main content
 首页 » 编程设计

Python之如何在列表中查找不是最小值的数字

2025年05月04日9开发

我有一个列表 S = [a[n],b[n],c[n]] 并且对于 n=0 列表的最小值 S 是值 'a'。如果我知道最小值,如何选择值 b 和 c?我正在编写的代码经历了 n 的多次迭代,我想检查循环中给定迭代中不是最小值的元素。

Python 2.7.3,32 位。 NumPy 1.6.2。 Scipy 0.11.0b1

请您参考如下方法:

如果你可以将整个列表展平成一个 numpy 数组,然后使用 argsort,argsort 的第一行会告诉你哪个数组包含最小值:

a = [1,2,3,4] 
b = [3,-4,5,8] 
c = [6,1,-7,12] 
S = [a,b,c] 
S2 = np.array(S) 
S2.argsort(axis=0) 
array([[0, 1, 2, 0], 
       [1, 2, 0, 1], 
       [2, 0, 1, 2]])