首页 > 解决方案 > 如何按字典的值排序?

问题描述

我正在做一个数据分析项目,我试图以降序排列我的结果,我第一次遇到类似的问题时,我使用sorted(dictt.items(), key= lambda x: x[1])它并且效果很好。现在,我遇到了一个类型错误:“AttributeError:'set' object has no attribute 'items'”。

我究竟做错了什么?

实际输出,但我希望它排序

标签: python-3.xdictionaryjupyter-notebookdata-analysis

解决方案


您尝试执行的操作有一个名为 OrderedDict 的特殊集合: https ://docs.python.org/3/library/collections.html#collections.OrderedDict

问题在于,按照您所做的排序方式会返回一组项目而不是字典,并且您必须再次将其变成字典。但是,出于效率原因,标准 dict 不会跟踪输入顺序,因此,如果您真的想要,只需将一组项目插入 OrderedDict ,如下所示:

myOrderedDict =  OrderedDict(sorted(dictt.items()))

推荐阅读