Предыдущие ответы верны.Просто для пояснения:
При работе с датами операции между двумя объектами datetime будут возвращать объект timedelta (потому что между ними есть разница во времени), а операции между объектом datetime и дельтой времени будут возвращать datetimeобъект.Подводя итог, прочитайте следующие слова как объекты типа:
datetime + datetime = timedelta
datetime + timedelta = datetime
Еще несколько воспроизводимых кодов:
Операция между объектом datetime и объектом timedelta
from datetime import datetime, timedelta
today = datetime.today()
print(today)
datetime.datetime(2019, 9, 27, 13, 26, 50, 972445)
print(str(today))
'2019-09-27 13:26:50.972445'
print(type(today))
<class 'datetime.datetime'>
yesterday = today - timedelta(days=1)
print(yesterday)
datetime.datetime(2019, 9, 26, 13, 26, 50, 972445)
print(str(yesterday))
'2019-09-26 13:26:50.972445'
print(type(yesterday))
<class 'datetime.datetime'>
Операция между двумя объектами datetime
today - yesterday
datetime.timedelta(days=1)
str(today - yesterday)
'1 day, 0:00:00'
type(today-yesterday)
<class 'datetime.timedelta'
Надеюсь, это поможет:)