简单来说就是先生成 value => key 的tuples,然后call sorted
sorted( [(my_map.get(k), k) for k in my_map], reverse=True )
另一种方法是call dict的items来产生dict_items,这个大概就像list of tuples with key and value。
d = {'a':1, 'b':2, 'c':3, 'd':64} d.items()
输出
dict_items([('a', 1), ('b', 2), ('c', 3), ('d', 64)])
所以排序可以用
sorted([(v, k) for k,v in d.items()], reverse=True)
输出
[(64, 'd'), (3, 'c'), (2, 'b'), (1, 'a')]