使用itemgetter代替lambda

时间:2019-01-15 19:56:34

标签: python python-3.x

是否可以使用itemgetter运算符来进行以下排序?

res = sorted(res, key = lambda x: (x['operation'], x['path']))

以前我有res.sort(key=itemgetter("path")),但是在弄清楚如何进行多种排序时遇到了麻烦。

1 个答案:

答案 0 :(得分:3)

您可以这样做:

from operator import itemgetter

res = [{"operation": 1, "path": 2}, {"operation": 1, "path": 1}]

res = sorted(res, key=itemgetter("operation", "path"))

print(res)

输出

[{'operation': 1, 'path': 1}, {'operation': 1, 'path': 2}]