如何在python中将datetime.date与str进行比较?

时间:2017-07-21 19:54:19

标签: python

我有一个像这样的日期列表[' 2009-12-07',' 2009-12-08']和另一个日期,如2010-01-03。如何比较2010-01-03是否大于列表中的个别日期?

3 个答案:

答案 0 :(得分:3)

要将字符串列表创建为日期对象列表:

from datetime import datetime

date_list = [datetime.strptime(x, "%Y-%m-%d") for x in date_list]

然后只需使用<>进行比较。

答案 1 :(得分:1)

创建所需的对象:

x = ['2009-12-07', '2009-12-08']
test = datetime.date(2010,1,3)

然后根据需要进行转换和比较:

[test > datetime.datetime.strptime(q,'%Y-%m-%d').date() for q in x]

返回[True,True]的结果。您可以根据需要进行分解。错误检查等留给读者。

答案 2 :(得分:-1)

from datetime import datetime

dates = ['2009-12-07', '2009-12-08']
compare = datetime.strptime('2010-01-03', '%Y-%m-%d')

for date in dates:
    d = datetime.strptime(date, '%Y-%m-%d')
    # or <
    # or =
    if compare > d:
        # do whatever