[英]How to sort keys of dict by values?
我有一个字典{'a': 2, 'b': 0, 'c': 1}
。
需要按值对键进行排序,以便我可以获得列表['b', 'c', 'a']
有没有简单的方法来做到这一点?
sorted_keys = sorted(my_dict, key=my_dict.get)
尝试这个:
import operator
lst1 = sorted(lst.items(), key=operator.itemgetter(1))
>>> d={'a': 2, 'b': 0, 'c': 1}
>>> [i[0] for i in sorted(d.items(), key=lambda x:x[1])]
['b', 'c', 'a']
有一种简单的方法可以做到这一点。 您可以使用.items()来获取键值,并使用sorted来相应地对它们进行排序。
dictionary = sorted(dictionary.items(),key=lambda x:x[1])
>>> d = {'a':2, 'b':0, 'c':1}
>>> sor = sorted(d.items(), key=lambda x: x[1])
>>> sor
[('b', 0), ('c', 1), ('a', 2)]
>>> for i in sor:
... print i[0]
...
b
c
a
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.