Вам нужно преобразовать строку даты в datetime
. Вы можете сделать это несколькими способами.
Используйте встроенный datetime.strptime
Например, сначала сравните с datetime
перед сравнением. Для этого необходимо заранее указать формат:
date = '2018-11-10 10:55:31+00:00'
date = datetime.strptime(date[:-6], '%Y-%m-%d %H:%M:%S')
print(date)
datetime.datetime(2018, 11, 10, 10, 55, 31)
Использовать стороннюю библиотеку
Одним из популярных инструментов является dateutil.parser
, который способен анализировать наиболее распространенные форматы даты и времени без заранее определенного формата:
from datetime import datetime, timedelta
from dateutil import parser
past = datetime.now() - timedelta(days=90)
date1 = '2018-11-10 10:55:31+00:00'
date2 = '2017-11-10 10:55:31+00:00'
for date in (date1, date2):
if past > parser.parse(date[:-6]):
print(f'This is older than 90 days: {date}')
This is older than 90 days: 2017-11-10 10:55:31+00:00