在Python中降序排序字典

新手上路,请多包涵

我是 Python 的新手,我想知道是否有比我这样做更常见的降序排序字典的方法:

 sorted_dictionary = sorted(dict.items(), key=lambda x: -x[1])

原文由 Darien 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 453
2 个回答

有一个 reverse 选项 sorted() 你可以改用:

 sorted(dict.items(), key=lambda kv: kv[1], reverse=True)

这会产生完全相同的输出,即使值不是数字也能正常工作。

原文由 Martijn Pieters 发布,翻译遵循 CC BY-SA 3.0 许可协议

Python 字典不可排序。您的 sorted_dictionary 输出不是字典而是列表。你必须使用 OrderedDict

 from collections import OrderedDict

sorted_dictionary = OrderedDict(sorted(dict.items(), key=lambda v: v, reverse=True))

原文由 Francesco Nazzaro 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题