【问题标题】:Compare dates in Python with datetime将 Python 中的日期与 datetime 进行比较
【发布时间】:2013-07-20 02:05:41
【问题描述】:

所以我有一个日期列表:

[datetime.date(2013, 7, 9), datetime.date(2013, 7, 12), datetime.date(2013, 7, 15), datetime.date(2013, 7, 18), datetime.date(2013, 7, 22), datetime.date(2013, 7, 25)]

我知道今天是:

date.today() 

为了这篇文章,今天是datetime.date(2013, 7, 15)

我需要能够生成任何未来日期的列表,包括今天(如果它在列表中)。

返回语句是:

[datetime.date(2013, 7, 15), datetime.date(2013, 7, 18), datetime.date(2013, 7, 22), datetime.date(2013, 7, 25)]

我知道我可以遍历一个列表并使用 timedelta 比较日期,但必须有一个更简单的方法..

【问题讨论】:

    标签: python date datetime time compare


    【解决方案1】:

    Comparing date with other date is possible.

    date1

    >>> datetime.date(2013, 7, 15) < datetime.date(2013, 7, 16)
    True
    >>> datetime.date(2013, 7, 15) <= datetime.date(2013, 7, 16)
    True
    >>> datetime.date(2013, 7, 15) > datetime.date(2013, 7, 16)
    False
    

    >>> import datetime
    >>> today = datetime.date(2013, 7, 15) # datetime.date.today()
    >>> [d for d in dates if d >= today]
    [datetime.date(2013, 7, 15), datetime.date(2013, 7, 18), datetime.date(2013, 7, 22), datetime.date(2013, 7, 25)]
    

    【讨论】:

    • 确实很快!我不敢相信我没有考虑过做不等式陈述.. 非常感谢!
    猜你喜欢
    • 2020-05-20
    • 1970-01-01
    • 1970-01-01
    • 2015-03-12
    • 2011-06-04
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 1970-01-01
    相关资源
    最近更新 更多