分析:首先判断给出的年份是否为闰年,闰年2月份为29天。如果是平年,如输入4月12日则前三个月份相加,再加12.。
闰年的判断条件:能被400或4整除,而且不被100整除
import datetime
#判断一个年份是否为闰年
def is_leap_year(year):
is_leap = False
if (year % 400 ==0)or(year %4==0)and(year%100!=0):
return True
def main():
input_str_time = input('请输入时间:yyyy/mm/dd')
input_time = datetime.datetime.strptime(input_str_time,'%Y/%m/%d')
year = input_time.year
month = input_time.month
day = input_time.day
months_day = [31,28,31,30,31,30,31,31,30,31,30,31]
if month>2 and is_leap_year(year):
months_day[1] = 29
days = sum(months_day[:month-1])+day
print('这是第{}年的第{}天。'.format(year, days))
if __name__ == '__main__':
main()
结果;
请输入时间:yyyy/mm/dd2019/12/25
这是第2019年的第359天。