想知道解答思路呀
可以一天一天循环吗?还是说按年份月的天数计算比较方便呢
import datetime
class Date():
def __init__(self, y, m, d):
self.y = y
self.m = m
self.d = d
def add_one_day(self, d):
a = datetime.datetime(self.y, self.m, self.d) + datetime.timedelta(days=d)
self.y = a.year
self.m = a.month
self.d = a.day
y,m,d = map(int,(input().split()))
day = Date(y,m,d)
day.add_one_day(10000)
print(f'{day.y}/{day.m}/{day.d}')
定义一个列表days,里面存放平年每个月的天数
如果是闰年,day[1]+=1
给个例子做参考
class Date:
def __init__(self,y,m,d):
self.y = y
self.m = m
self.d = d
def add_one_day(self):
md_lst = [31,28,31,30,31,30,31,31,30,31,30,31]
if (self.y%4==0 and self.y%100!=0) or self.y%400==0:
md_lst[1] = 29
if self.d==md_lst[self.m-1]:
self.d = 1
if self.m==12:
self.y += 1
self.m = 1
else:
self.m +=1
else:
self.d += 1
if __name__ == '__main__':
y,m,d = [int(x) for x in input().split()]
date = Date(y,m,d)
for i in range(10000):
date.add_one_day()
print(f'{date.y}/{date.m}/{date.d}')