首先按值对Dictionary排序,然后按python 3中的键排序

时间:2020-05-27 09:42:53

标签: python python-3.x sorting dictionary key-value

我按值对Dict排序,但是当值相等时,键应按字母顺序排序。 我希望我的输出按其值降序排序,然后按其键(字母顺序)升序(A-Z)

1 个答案:

答案 0 :(得分:1)

my_dictionary = dict({'ca': 'a', 'cb': 'c', 'n': 'b', 'd': 'z', 'f': 'a'})
l=my_dictionary.items() # get a list of (k, v)
l.sort(key=lambda x: x[0],reverse=False) # sort by key in ascending order
l.sort(key=lambda x: x[1],reverse=True) # sort by value in descending order
ordered_keys=[t[0] for t in l] # get an ordered list of the keys

此代码为您提供了键的排序列表,可用于按所需顺序访问值