from time import strftime, localtime from datetime import timedelta, date import datetime import calendar
def addzero(n): nabs = abs(int(n)) if (nabs < 10): return "0" + str(nabs) else: return nabs def get_days_of_month(year, mon): return calendar.monthrange(year, mon)[1] def getyearandmonth(n=0): thisyear = datetime.datetime.today().year thismon = datetime.datetime.today().month totalmon = thismon + n if (n >= 0): if (totalmon <= 12): days = str(get_days_of_month(thisyear, totalmon)) totalmon = addzero(totalmon) return (datetime.datetime.today().year, totalmon, days) else: i = totalmon / 12 j = totalmon % 12 if (j == 0): i -= 1 j = 12 thisyear += i days = str(get_days_of_month(thisyear, j)) j = addzero(j) return (str(thisyear), str(j), days) else: if ((totalmon > 0) and (totalmon < 12)): days = str(get_days_of_month(thisyear, totalmon)) totalmon = addzero(totalmon) return (datetime.datetime.today().year, totalmon, days) else: i = totalmon / 12 j = totalmon % 12 if (j == 0): i -= 1 j = 12 thisyear += i days = str(get_days_of_month(thisyear, j)) j = addzero(j) return (str(thisyear), str(j), days)
def get_today_month(n=0): day=datetime.datetime.today().day (y, m, d) = getyearandmonth(n) arr = (y, m, d) if (day < int(d)): arr = (y, m, day) return "-".join("%s" % i for i in arr)
if name == "main": print(get_today_month(-3))