在列表中查找最旧/最年轻的日期时间对象

发布于 2021-01-29 18:17:32

我有一个日期时间对象列表,我想找到最早的或最小的对象。其中一些日期可能在将来。

from datetime import datetime

datetime_list = [
    datetime(2009, 10, 12, 10, 10),
    datetime(2010, 10, 12, 10, 10),
    datetime(2010, 10, 12, 10, 10),
    datetime(2011, 10, 12, 10, 10), #future
    datetime(2012, 10, 12, 10, 10), #future
]

最佳方法是什么?我当时正在考虑将datetime.now()与其中的每一个进行比较。

关注者
0
被浏览
41
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    最老的:

    oldest = min(datetimes)
    

    现在最年轻:

    now = datetime.datetime.now(pytz.utc)
    youngest = max(dt for dt in datetimes if dt < now)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看