在列表中查找最大整数的位置
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'
如果举个简单的例子:
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'