Alle Jahre wieder passiert es: Tage, die es gar nicht gibt...
1 >>> import datetime as dt
2 >>> today = dt.date.today()
3 >>> today
4 datetime.date(2008, 2, 29)
5 >>> nextyear = today.replace(year=today.year+1) # findet man so im Netz
6 Traceback (most recent call last):
7 File "<stdin>", line 1, in ?
8 ValueError: day is out of range for month
9 #
10 # Autsch!
11 #
12 >>> nextyear = today + dt.timedelta(days=365)
13 >>> nextyear
14 datetime.date(2009, 2, 28)
15 >>> nextyear = today + dt.timedelta(days=366)
16 >>> nextyear
17 datetime.date(2009, 3, 1)