2013-03-06 11 views
5

私はdict d = {'a': '1', 'c': '10', 'b': '8', 'e': '11', 'g': '3', 'f': '2'}を持っています。私はd.values()の数値で辞書をソートしたい。必要な回答は['a','f', 'g', 'b', 'c', 'e']です。私はhereをチェックした。 d.values()の整数値に従ってソートすることはできませんでした。dict.valuesの数値でdictをソート

答えて

12
>>> d = {'a': '1', 'c': '10', 'b': '8', 'e': '11', 'g': '3', 'f': '2'} 
>>> sorted(d, key=lambda i: int(d[i])) 
['a', 'f', 'g', 'b', 'c', 'e'] 
0

これは、辞書の値がタイプstringであるためです。数字の周りの引用符に注意してください。辞書を次のように設定してみてください:

d = {'a':1, 'c':10, 'b':8, 'e':11, 'g':3, 'f':2}