Как добавить Один год к дате в python? - PullRequest
2 голосов
/ 04 марта 2020

Я сравниваю две даты друг с другом из двух исключений, которые мне нужны, чтобы сделать условие, сравнивая одну из дат с другой, увеличивая ее на один год, следующий мой код:

date1=str(ws1["H2"].value).strip()
date2=str(ws2["H2"].value).strip()

for p in date1.splitlines():
    d=parser.parse(p)
    date1=d.strftime("%d.%m.%Y")
date1=parser.parse(date1,dayfirst=True)
print(date1)

date2=parser.parse(date2,dayfirst=True)
print(date2)


if date1<date2:
    print('matched')
else:
    print('not matched')

Код работает нормально. Я хочу проверить, иногда ли date1 меньше date2 после добавления 1 года к date2. Как мне это сделать ??

Я хочу добавить 1 год к дате2, а затем снова сравнить, если дата1 меньше даты2 или нет

Спасибо

Ответы [ 2 ]

3 голосов
/ 04 марта 2020

Использование dateutil.relativedelta.relativedelta

Пример:

from dateutil.relativedelta import relativedelta

while date2 < date1:    #Check if date2 is less that date1
    date2 += relativedelta(years=1)   #increment date2
1 голос
/ 04 марта 2020

Вы можете заменить любую отдельную часть объекта даты и времени:

if date1 < date2.replace(year = date2.year):
    ...
...