2013-03-06 5 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}