我可以确信这非常简单:
假设我有以下字典:
foo = { a: 3, b: 10, c: 5 }
什么是获取值10最高效(且最干净)的方法?谢谢。
我可以确信这非常简单:
假设我有以下字典:
foo = { a: 3, b: 10, c: 5 }
max(foo.itervalues())
在Python 3.x上:
max(foo.values())
>>> d = {'a':5,'b':10,'c':5}
>>> d.get(max(d, key=d.get))
10
解释:
max(d, key=d.get) => 获取字典 d 中值最大的键
d.get => 获取与该键相关联的值
希望这能帮到您。
假设你有以下计数器对象:
from collections import Counter
foo = Counter({ "a": 3, "b": 10, "c": 5 })
.most_common()
方法来获取一个按照最多到最少排序的元组列表:>>> foo.most_common()
[('b', 10), ('c', 5), ('a', 3)]
foo_max = foo.most_common()[0]
collections.Counter
时才会这样 - 即使是这样,most_common
也不是真正为此设计的... 这基本上就像执行sorted(foo.values(), reverse=True)[0]
。 - Jon Clements