2017-04-22 3 views
-1

辞書:から最低のキーと値を取得するために分を使用した辞書

min_ = min(d, key=d.get) 

出力:

d = {u'A': 240, u'B': 242, u'C': 243} 

が、私は成功し、次のコードを使用して、最も低いキーを識別するために管理しています

A 

私はプットにも値が含まれています。

A, 240


:可能

+1

'[MIN_]'あなたが 'dict'を持って –

+0

値を与えるdは。あなたは鍵を持っており、価値が必要です。私はあなたがドットを結ぶことができると思う。 –

+0

また、 'min(d.items()、key = operator.itemgetter(1))'です。 – AChampion

答えて

1

辞書項目にminを適用した場合

私はlambdaの使用を避けたいのですが

from operator import itemgetter 

min(d.items(), key=itemgetter(1)) 

私はoperator.itemgetter() callableを使用して、それぞれ(key, value)のペアからvalueを取得しましたが、lambda pair: pair[1]も使用できます。後者は、Pythonコールフレームに戻っていくため、やや遅くなります。

デモ:

>>> from operator import itemgetter 
>>> d = {u'A': 240, u'B': 242, u'C': 243} 
>>> min(d.items(), key=itemgetter(1)) 
(u'A', 240) 
+0

素晴らしい、ありがとう! "Unnecessary Characters"すなわち "(u ')"を削除する簡単な方法があるので、私は 'A、240'を残していますか? – LearningToPython

+0

@LearningToPython:*タプル*をエコーし​​たり、印刷しているので、 'repr()'が使われます。タプルはエンドユーザフレンドリではなく、デバッグに優しい表現しかしていません。それを何か他のものに書式化したい場合は、文字列書式を使用してください。 '' {}、{} '。format(* result) 'は、あなたが望むようにフォーマットします(2つの値をコンマとスペースで文字列に入れます)。 –

+0

ありがとうございます - 私は 'x [0]'と 'x [1]'を実行して結果を得た – LearningToPython

関連する問題