2009/3/15 <tinn...@isbd.co.uk>: > I have a date in the form of a datetime object and I want to add (for > example) three months to it. At the moment I can't see any very > obvious way of doing this. I need something like:- > > myDate = datetime.date.today() > inc = datetime.timedelta(months=3) > myDate += inc > > but, of course, timedelta doesn't know about months. I had a look at > the calendar object but that didn't seem to help much. > > -- > Chris Green > -- > http://mail.python.org/mailman/listinfo/python-list >
I guess, one can simply do this manually: >>> td = datetime.date.today() >>> td datetime.date(2009, 3, 15) >>> td_plus_3_months = datetime.date(td.year, td.month+3, td.day) >>> td_plus_3_months datetime.date(2009, 6, 15) however, one have to check for non existing dates: >>> datetime.date(td.year, td.month+10, td.day) Traceback (most recent call last): File "<input>", line 1, in <module> ValueError: month must be in 1..12 >>> hth vbr -- http://mail.python.org/mailman/listinfo/python-list