Python:有没有办法将列表从高到低排序

Python: is there a way to sort a list from higher to lower

本问题已经有最佳答案,请猛点这里访问。

我在python中有以下代码:

1
2
3
4
5
results = {}
....
results = sorted([(v, k) for (k, v) in results.items()])
....
return results[:limit]

results包含按这种方式排序的距离,较小的距离在列表的顶部。

有没有一种方法可以这样对这个列表进行排序:更高的距离在results的顶部?或者,如果我们不颠倒这些项目,就有办法得到results的最后一个项目,而不是使用return results[:limit]得到最高的结果。


sorted函数中使用可选的reverse参数:

1
results= sorted([(v, k) for (k, v) in results.items()], reverse=True)


要回答您提出的第二个问题,因为@ruzihm已经回答了第一个问题,您可以通过以下方式获得results的最后一项:

1
return results[-limit:]