基于布尔值和日期时间值对列表排序

2024-09-29 02:21:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一份清单:

[{'added_on': datetime.datetime(2017, 8, 30, 13, 1, 40, 84539, tzinfo=<UTC>),
  'priority': False,
  'userEmail': u'xxx@yyy.com',
  'Id': 16123},...]

我需要把它整理好,这样那些优先权为真的词应该以倒序的顺序排在第一位,其余的也按倒序排列。在

尝试过:

^{pr2}$

按时间顺序排序。在

如何实现这一点。在

谢谢


Tags: comidfalseaddeddatetime顺序on整理
1条回答
网友
1楼 · 发布于 2024-09-29 02:21:57

如果要对多个谓词进行排序,则需要对元组使用sorted。在

lst = sorted(List, key=lambda item: (item['priority'], -item['added_on'].timestamp()) )

第二个参数item['added_on'].timestamp()意味着将datetime对象转换为其在时间段中的等价对象,然后反转符号,使其在该谓词上反向排序。在

相关问题 更多 >