Python:在min y的对列表中获取最大对

时间:2011-02-25 14:15:35

标签: python list max min

我如何在min y的对列表中得到最大对?

我得到了这个清单:

L =[[1,3],[2,5],[-4,0],[2,1],[0,9]]

使用max(L)我得到[2,5],但我想要[2,1]。

3 个答案:

答案 0 :(得分:17)

max(L, key=lambda item: (item[0], -item[1]))

输出:

[2, 1]

答案 1 :(得分:1)

你的要求有点神秘,但我认为这就是你想要的:

x, y = zip(*L)
maxPairs = [L[i] for i,a in enumerate(x) if a == max(x)]
returnPair = sorted(maxPairs)[0]

答案 2 :(得分:0)

import operator

get_y= operator.itemgetter(1)
min(L, key=get_y)[0]

查找最小 y 的坐标,检索 x

如果您不喜欢operator.itemgetter,请执行:

min(L, key=lambda c: c[1])[0]