在Python中与datetime比较日期 [英] Compare dates in Python with datetime
本文介绍了在Python中与datetime比较日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我有一个日期列表:
So I have a list of dates:
[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)
For the sake of this post, today is datetime.date(2013, 7, 15)
我需要能够生成任何未来日期的列表,包括今天的列表。
I need to be able to generate a list of any future dates, including today if it's on the list.
返回语句将是:
[datetime.date(2013, 7, 15), datetime.date(2013, 7, 18), datetime.date(2013, 7, 22), datetime.date(2013, 7, 25)]
我知道我可以迭代一个列表,并使用timedelta比较日期,但那里必须是一个更简单的方法。
I know I can just iterate over a list and compare dates using a timedelta but there has to be an easier way..
推荐答案
date1< date2 date1被认为小于date2,当date1在时间date2之前。
date1 < date2 date1 is considered less than date2 when date1 precedes date2 in time.
>>> 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)]
这篇关于在Python中与datetime比较日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文