Python的日期时间函数中好像没有把一个日期(时间)型变量加上几个月的函数,仿照Delphi中的自己写了一个。代码如下:
import calendar
Yearmonth = ((0,31,28,31,30,31,30,31,31,30,31,30,31),
(0,31,29,31,30,31,30,31,31,30,31,30,31))
def addmonths(begindate, months):
n = begindate.year*12 + begindate.month - 1
n = n + months
ryear = n / 12
rmonth = n%12 + 1
rday = begindate.day
if calendar.isleap(ryear):
if rday > Yearmonth[1][rmonth]:
rday = Yearmonth[1][rmonth]
else:
if rday > Yearmonth[0][rmonth]:
rday = Yearmonth[0][rmonth]
return begindate.replace(year=ryear, month=rmonth, day = rday)
本文提供了一个Python函数,用于将日期型变量增加指定的月份数。该函数通过计算新的年月日来实现,并考虑了不同月份天数及闰年的影响。
898

被折叠的 条评论
为什么被折叠?



