在python中按不同键排序dicts列表

时间:2017-05-18 22:41:15

标签: python

这是我的词典列表:

[{'title': 'C'}, {'contentTitle':'B'}, {'title': 'A'}]

在python中,是否可以编写一个比较器来对列表进行排序,该列表首先看title下的值,如果没有title,则使用contentTitle下的值< / p>

1 个答案:

答案 0 :(得分:3)

您可以使用dict.get()查找密钥而不会引发异常:

>>> lst = [{'title': 'C'}, {'contentTitle':'B'}, {'title': 'A'}]
>>> sorted(lst, key=lambda x: x.get("title") or x.get("contentTitle"))
[{'title': 'A'}, {'contentTitle': 'B'}, {'title': 'C'}]