Oczywiście w dokumentacji jest to opisane, ale początkowo byłem bardzo zdziwiony że nie można dodawać do siebie dwóch dat. Chciałem na początek dodać jedną godzinę, minutę i sekundę do daty:
import datetime a = datetime.datetime(2000,1,1) b = datetime.datetime(2000,1,1,1,1,1) c = a + b Traceback (most recent call last): File "", line 1, in TypeError: unsupported operand type(s) for +: 'datetime.datetime' and 'datetime. datetime'
Kończyło się oczywiście błędem powodującym u zmęczonego człowieka święte oburzenie: Jak to się nie da !
W pierwszej chwili zacząłem kombinować, że to pewnie kwestia dodania daty w "b", w sumie niepotrzebnej bo i tak chcę tylko sekundę. Zamieniłem b na:
b = datetime.time(1,1,1)
ale efekt był podobny. Ki diabeł? Kombinowałem na wszelkie możliwe sposoby i nic nie wychodziło W końcu dałem spokój i poszedłem spać.
Rano mnie olśniło! Do tego służy przecież datetime.timedelta !
b = datetime.timedelta(hours=1, minutes=1, seconds=1) c = a + b print c 2000-01-01 01:01:01