How to sort a Python dictionary by value?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
In Python how do I sort a list of dictionaries by values of the dictionary?
Sorting Python dictionary based on nested dictionary values
在词典的形式有:为上述下面
1 | a_dict = { 'e': (1, 100), 'a': (2, 3) } |
我在这两个城市unable品种在第二个元素的元组。词典的产物;将appear为下面的:
1 | a_dict = { 'a': (2, 3), 'e': (1, 100) } |
词典不能这样排序,但可以对其内容进行排序:
1 2 | sorted(a_dict.items(), key=lambda (k, (v1, v2)): v2) sorted(a_dict.items(), key=lambda item: item[1][1]) # Python 3 |
您可以将结果放入
1 2 | OrderedDict(sorted(a_dict.items(), key=lambda (k, (v1, v2)): v2)) OrderedDict(sorted(a_dict.items(), key=lambda item: item[1][1]) # Python 3 |
在您的示例中,您使用的是字典列表。按键对dict排序:
1 2 3 4 5 6 7 8 9 10 11 12 | mydict = {'carl':40, 'alan':2, 'bob':1, 'danny':3} for key in sorted(mydict.iterkeys()): print"%s: %s" % (key, mydict[key]) alan: 2 bob: 1 carl: 40 danny: 3 |
如果要按值对dict排序,请参见按值对python字典排序