输入年月日的日期,输出它的后一天

python自学练习题————字符串篇

date=str(input())
year=int(date[0:4])
month=int(date[4:6])
day=int(date[6:9])
if year<0 or month>12 or month<0 or day>31 or day<0:#查看输入日期是否有误
    print("输入日期有误请重新输入")
    date=str(input())
    year=int(date[0:4])
    month=int(date[4:6])
    day=int(date[6:9])
print(f'日期是{year}年{month}月{day}日')
if month==1 or month==3 or month==5 or month==7 or month==8 or month==10:#月份1、3、5、7、8、10的判断语句
    if day==31:
        day=1
        month+=1
        print(f'后一天的日期是{year}年{month}月{day}日,1')
    elif day<31:
        day+=1
        print(f'后一天的日期是{year}年{month}月{day}日 2')
elif month==2:#月份2的判断语句
    if year%4==0 & year%100!=0 and year%400==0 & day==29:#判断是不是闰年 
        day=1
        month+=1
        print(f'后一天的日期是{year}年{month}月{day}日 3')
    elif year%4!=0 & year%100==0 and year%400!=0:
        if day==28:
            day=1
            month+=1
            print(f'后一天的日期是{year}年{month}月{day}日 4')
        if day>28:
            print("输入日期有误")
    else:
        day+=1
        print(f'后一天的日期是{year}年{month}月{day}日 5')
        
elif month==12:#月份12的判断语句
    if day==31:
        year+=1
        day=1
        month=1
        print(f'后一天的日期是{year}年{month}月{day}日 6')
    else:
        day+=1
        print(f'后一天的日期是{year}年{month}月{day}日 7')
elif day==30:
    day=1
    month+=1
    print(f'后一天的日期是{year}年{month}月{day}日 8')
else:#月份4、5、6、9、11月的判断语句
    day+=1
    print(f'后一天的日期是{year}年{month}月{day}日 9')
    

print 内的数字为了后期测试加的,可以删掉
其实2月闰年日期条件应该放在前面(判断日期有误那)

如果有简单精炼的代码可以互相告知、进步哦


版权声明:本文为weixin_46787324原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。