首页 > 解决方案 > 如果语句不起作用。使用日期

问题描述

下午好,

我正在尝试编写一个读取日期/时间值并检查它是否早于 2、4、7 天的代码。最好我只想考虑工作日。我用正常的日子编写了简单的代码,但似乎 Python 并没有通过我的 IF 语句:

def Calc_Date(datestring):
    a = datestring
    date_time_ticket = datetime.datetime.strptime(a, '%d-%b-%Y %H:%M:%S')
    date_today = datetime.date.today()
    date_only = date_time_ticket.date()
    minus_2_days = date_today - timedelta(days=2)
    minus_4_days = date_today - timedelta(days=4)
    minus_7_days = date_today - timedelta(days=7)
    minus_14_days = date_today - timedelta(days=14)
    minus_21_days = date_today - timedelta(days=21)
    print(date_today, type(date_today))
    print(date_only, type(date_only))
    print(minus_2_days, type(minus_2_days))
    if date_only < minus_2_days:
        print('lower than 2')
    elif date_only < minus_4_days:
        print('lower than 4')
    elif date_only < minus_7_days:
        print('lower than 7')

这是我得到的结果:

2021-06-03 <class 'datetime.date'>
2021-06-01 <class 'datetime.date'>
2021-06-01 <class 'datetime.date'>

Calc_Date('01-Jun-2021 16:18:59')

标签: python-3.xdate

解决方案


推荐阅读