在列表中查找最大整数的位置

Finding the location of a max int in a list

如果举个简单的例子:

k = ['a', 'b', 'c', 'd']
l = [20, 50, 1, 100]

如何在一行中编写最简单的代码来获取列表 k 中与列表 l 的最高编号位置对应的项目?

k[max(l)]

完全不知道...

可以找到第一次出现的最高数字,如 -

ans = k[l.index(max(l))]
from operator import itemgetter

max(zip(k, l),key=itemgetter(1))[0]

或使用python 2:

  from itertools import izip

  max(izip(k, l),key=itemgetter(1))[0]

如果 l 碰巧使用 zip 更长,您将获得相应长度的最大值。

>>> k = ['a', 'b', 'c', 'd']
>>> l = [20, 50, 1, 100]
>>> k[l.index(max(l))]
'd'