在Python3.x中按(i)键(ii)值降序排序字典

2024-04-19 16:14:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本字典:

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

如果要按值的降序排序,请使用:

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

我应该如何处理键的降序?你知道吗


Tags: keyintesttrueforget字典排序
3条回答

实际上,您已经非常接近了,只要删除.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按降序返回键。你知道吗

使用快速紧凑的词典理解:

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}

请记住,字典没有任何真正的“顺序”。你知道吗

但是你可以把这些键作为一个列表来获取,并对这个列表进行排序。你知道吗

sorted(dict_test.keys())

相关问题 更多 >