5

我已经看过这篇文章这篇文章以及许多其他文章,但还没有完全找到我的问题的答案,也无法弄清楚。

我有一本列表字典。例如,它看起来像:

Dict = {'a':[1,2,3,4], 'b':[9,8,7,6], 'c':[8,5,3,2]}

我想返回基于列表中特定项目排序(降序/反向)的键列表。例如,我想根据每个列表中的第 4 项对 a、b、c 进行排序。

这应该返回sorted_keys = ['b','a','c']按值排序的列表[6,4,2]

说得通?请帮助...谢谢!

4

1 回答 1

9

提供一个key函数,alambda是最简单的,并且排序相反:

sorted(Dict.keys(), key=lambda k: Dict[k][3], reverse=True)

key 函数告诉sorted排序依据;给定键值中的第 4 项。

演示:

>>> sorted(Dict.keys(), key=lambda k: Dict[k][3], reverse=True)
['b', 'a', 'c']
于 2013-04-22T17:02:44.720 回答