输入日期判断这一年的第几天

输入日期判断这一年的第几天。@TOC

先简单的分析它一波:

简单点来说就是从字符串中分离出年份,月份和日:
例如:输入的字符串事20211130,便可以先判断一下输入的字符串是不是八位的,然后前四位是年份后两位事多少号,中间的便是月份。这样我们就可以通过切片获得年月日,但是注意这里获得的都是string类型的,需要int一下才可以进行下面的操作。首先需要判断一下年份,因为闰年366,平年365(闰年判断规则:能被400整除或(被100整除且不被4整除))。然后再制作一个字典把每个月和对应的天数放进去(emmm……这个很简单)然后进行累加求和就可以了!


确定要解决的几件事:

第一件事:判断位数:

while 1:
        i = input()
        len = len(i)
        if (len!=8):
            print("请重新输入年份!")
        else:
            break

第二件事:分离出年月日并转换类型:

year = int(i[0:4])
month = int(i[4:6])
day = int(i[6:8])

第三件事:判断闰年:

if(year%400==0)or((year%4==0)and(year%100!=0)):
    print(year,"是闰年")
    day = day + 1
else:
    print(year,"不是闰年")
dict = {1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}

第四件事:累加求和

sum = 0
for i in range(1,month):
    sum=sum+dict[i]
sum = sum + day
print("这是",year,"的第",sum,"天")

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值