基于多个参数对字典进行排序

时间:2017-04-11 11:01:54

标签: python sorting dictionary

我有以下代码库:

{{1}}

这将根据值对字典分数进行排序。现在如果我想根据键对结果sorted_scores列表进行排序,但这次按升序排序。

换句话说,我期待输出是这样的: [(2000,18),(3000,18),(1000,17)]

因此,这是按降序排序的值,但由于2000和3000具有相同的值,因此它们按升序排序。

这可以通过某种方式实现吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用双sorted,使用不同的key

sorted(sorted(scores.items(), key=operator.itemgetter(0)), key=operator.itemgetter(1),reverse=True)
# [(2000, 18), (3000, 18), (1000, 17)]