2017-06-20 12 views

答えて

9

である可能性があります。私たちは、単に書くことができます。

[k for k,v in mydict.items() if float(v) >= 17] 

それとも、で動作する場合は、あなたを - @NoticeMeSenpaiのように述べてい - よりよい利用を:

[k for k,v in mydict.iteritems() if float(v) >= 17] 

これはリスト内包です。 mydict辞書のキーと値のペアを繰り返します。次に値vfloat(v)に変換し、その浮動小数点数が17以上であるかどうかを確認します。その場合は、キーkをリストに追加します。あなたのmydict与えられたために

、これが生成します。

>>> [k for k,v in mydict.items() if float(v) >= 17] 
[(2, 3, 4)] 

だからここに条件を満たし単一キー含むリスト:(2,3,4)を。

+1

また注目に値するのは、<2.7では、リソースとパフォーマンスの目的で 'dict.iteritems()'を使用する必要があります。 –

+1

@NoticeMeSenpai:ありがとうございます。私は答えに加えました。 –

+0

あなたは大歓迎です! –

関連する問題