按(i)键(ii)Python 3.x中的值的降序对字典进行排序

时间:2018-11-24 22:06:47

标签: python python-3.x dictionary

我有字典:

{1: 6, 2: 4, 3: 7}

如果我想按 VALUES 的降序排序,请使用:

for w in sorted(dict_test, key=dict_test.get, reverse=True):
        print(w, dict_test[w])

对于 KEYS 的降序我应该怎么做?

3 个答案:

答案 0 :(得分:1)

实际上,您非常接近,只需删除.get方法,您甚至不需要通过key

dict_test = {1: 6, 2: 4, 3: 7}

for w in sorted(dict_test, reverse = True):
        print (w, dict_test[w])

>>
3 7
2 4
1 6

如果仅循环dict_test,则返回其键,而使用reverse = True,将以降序返回键。

答案 1 :(得分:0)

请记住,字典没有任何实际的“顺序”。

但是您可以将密钥作为列表进行获取并对该列表进行排序。

sorted(dict_test.keys())

答案 2 :(得分:0)

使用快速而紧凑的字典理解:

test_dict = {1: 6, 2: 4, 3: 7}

new_test_dict = {i: j for i,j in sorted(test_dict.items(), reverse=True)}
print(new_test_dict)

输出:

C:\Users\Documents>py test.py
{3: 7, 2: 4, 1: 6}