可能重复:
如何在字典中找到对应值最大的键?
假设我有一个由整数键和整数值组成的字典。我想找到具有最高相应值的整数键。是否有任何内置方法可以执行此操作,还是需要实现某种合并/排序算法?
可能重复:
如何在字典中找到对应值最大的键?
假设我有一个由整数键和整数值组成的字典。我想找到具有最高相应值的整数键。是否有任何内置方法可以执行此操作,还是需要实现某种合并/排序算法?
max
。>>> x = {1:2, 3:6, 5:4}
>>> max(x, key=lambda i: x[i])
3
或者只需:Or just:
>>> max(x, key=x.get)
3
import operator
result = max(your_dict.iteritems(), key=operator.itemgetter(1))[0]
请注意,对于您的需求,operator.itemgetter(1)
可以被替换为 lambda x: x[1]
。
your_dict.iteritems()
相比于仅使用 your_dict
有什么优势吗? - verdesmaraldyour_dict.iteritems()
返回的内容与 your_dict
不同),因此它们是不能进行比较的。 - Tadeckmax(your_dict.iteritems())[0]
和 max(your_dict)
得到的结果是相同的。 - verdesmaraldmax(your_dict)
将给出最大的键,而不是对应于最大值的键。为了看到区别,请查看以下结果:max({1:100,2:20})
(它将给你2
而不是1
)。 - Tadeck
max(stats.iteritems(), key=operator.itemgetter(1))
。 - Tadeck