Python练习题:输入某年某月某日,判断这一天是这一年的第几天?

Python练习题:输入某年某月某日,判断这一天是这一年的第几天?

#输入某年某月某日,判断这一天是这一年的第几天?

import sys
year = int(input("请输入年:\n"))
month = int(input("请输入月:\n"))
if month <= 0 or month > 12:
    print('请输入正确的月份')
    sys.exit(0)
day = int(input("请输入日:\n"))
if day <= 0:
    print('请输入正确的日期')
    sys.exit(0)
elif(month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10 or month == 12) and day > 31:
    print('请输入正确的日期')
    sys.exit(0)
elif(month == 4 or month == 6 or month == 9 or month == 11) and day > 30:
    print('请输入正确的日期')
    sys.exit(0)
elif(year % 400 == 0 or (year % 4 == 0 and year % 100 != 0)) and month == 2 and day > 29:
    print('请输入正确的日期')
    sys.exit(0)
elif(year % 4 != 0 or year % 400 != 0) and month == 2 and day > 28:
    print('请输入正确的日期')
    sys.exit(0)
months1 = [0,31,60,91,121,152,182,213,244,274,305,335,366]#闰年
months2 = [0,31,59,90,120,151,181,212,243,273,304,334,365]#平年
if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0):
    date = months1[month-1]+day
else:
    date = months2[month-1]+day
print('{}年{}月{}日是这年的第{}天'.format(year,month,day,date))

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值