これはとても簡単だと思います:
次の辞書があるとします。
foo = { a: 3, b: 10, c: 5 }
値 10 を取得する最も効率的な (そして最もクリーンな) 方法は何ですか?
ありがとう
これはとても簡単だと思います:
次の辞書があるとします。
foo = { a: 3, b: 10, c: 5 }
値 10 を取得する最も効率的な (そして最もクリーンな) 方法は何ですか?
ありがとう
最大値を見つけることだけに関心があり、それに関連するキーではない場合は、dict の値にアクセスするだけです (ただし、リンクされた投稿Getting key with maximum value in Dictionary?は間違いなく読む価値があります)
Python 2.x の場合:
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 => そのキーに関連付けられた値を取得します
お役に立てれば。
次の Counter オブジェクトがあるとします。
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]