基于字典值的排序列表

2024-05-12 19:42:40 发布

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

我有一个dicty = {6:34,5:40,3:70,2:80}和listm = [5,2,3],其中只有dicty的一些键。我必须根据DITC^ {< CD4>}的值排序,只考虑列表中存在的关键字{{CD5>},并且最终结果应该有排序的^ {< CD6>}


Tags: 列表排序关键字ditclistmcd5dictycd4
1条回答
网友
1楼 · 发布于 2024-05-12 19:42:40

您可以将sorted()与一个键函数一起使用,该函数将根据字典值对列表进行排序:

>>> sorted(m, key= lambda x: -y.get(x))
[2, 3, 5]

请注意,由于sorted()以升序模式对项目进行排序,所以可以使用dict值的负值使其按降序对列表进行排序。或者您可以将reverse参数更改为True

>>> sorted(m, key= lambda x: y.get(x), reverse=True)
[2, 3, 5]

相关问题 更多 >