def days(year1,month1,day1,year2,month2,day2):
list1=[1,3,5,7,8,10,12];
list2=[4,6,9,11];
day=0;
# 先算出year1和year2之间年的总天数
for i in range(year2+1,year1):
if(i%4==0 and i%100!=0 or i%400==0):
day+=366;
else:
day+=365;
# 这个是算出year1年1月1日到month1月day1日的天数,直接加到day上
for i in range(1,month1):
if(i in list1):
day+=31;
elif(i in list2):
day+=30;
else:
if (year1 % 4 == 0 and year1 % 100 != 0 or year1 % 400 == 0):
day+=29;
else:
day+=28;
day+=day1;
# 这个是算year2年1月1日到 month2月day2日的天数 --- day0
day0=0;
for i in range(1,month2):
if (i in list1):
day0 += 31;
elif (i in list2):
day0 += 30;
else:
if (year2 % 4 == 0 and year2 % 100 != 0 or year2 % 400 == 0):
day0 += 29;
else:
day0 += 28;
day0+=day2;
# 判断year2是闰年还是平年 day3是求year2这一年剩下的天数
if (year2 % 4 == 0 and year2 % 100 != 0 or year2 % 400 == 0):
day3=366-day0;
else:
day3=365-day0;
# 总天数
allday=day+day3;
print(allday);
year1=int(input('输入年'));
month1=int(input('输入月'));
day1=int(input('输入天'));
year2=int(input('输入年'));
month2=int(input('输入月'));
day2=int(input('输入天'));
days(year1,month1,day1,year2,month2,day2);
设计一个函数,传入两个年月日,算出间隔的天数
最新推荐文章于 2021-05-24 21:53:10 发布