我有一个字典 y = {6:34,5:40,3:70,2:80}
和列表 m = [5,2,3]
它只有 dict y 的一些键。我必须根据 dict y = {2:80,3:70,5:40,6:34}
的值进行排序,并且只考虑列表 m
中存在的键最终结果应该已排序 m =[2,3,5]
最佳答案
您可以将 sorted()
与键函数一起使用,该函数将根据字典值对列表进行排序:
>>> sorted(m, key= lambda x: -y.get(x))
[2, 3, 5]
请注意,由于 sorted()
以升序模式对项目进行排序,因此您可以使用字典值的负值来使其对列表进行降序排序。或者您可以将 reverse
参数更改为 True
:
>>> sorted(m, key= lambda x: y.get(x), reverse=True)
[2, 3, 5]
关于python - 根据字典的值对列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35789546/