#_*_coding:utf_*_
#!/usr/bin/env python now_day=input('当前某一天:').format('%Y.%m.%d')%%输入日期(年.月.日) year=int(now_day.split('.')[0])%%年月日用符号“.”分隔开,年放在第一个位置
month=int(now_day.split('.')[1])%%月放在第二个位置
day=int(now_day.split('.')[2])%%日放在第三个位置
print(year,month,day)%%输出使用者
a=[1,3,5,7,8,10]%%将月份中有三十一天的列入一个数组
b=[4,6,9,11]%%将月份中只有三十天的列入一个数组
if month in a:%%如果月份属于a中,则判断日是否为三十一,不是则日加一,是则月加一
if day == 31:
month =int(month) + 1
day=1
print('%04d-%02d-%02d' % (year, month, day))
else:
if day < 32:
day = int(day) + 1
print('%04d-%02d-%02d' % (year, month, day))
elif month in b:%%如果月份属于b中,则判断日是否为三十,不是则日加一,是则月加一
if day == 30:
month = int(month)+ 1
day=1
print('%04d-%02d-%02d' % (year, month, day))
else:
if day < 32:
day = int(day) + 1
print('%04d-%02d-%02d' % (year, month, day))
elif month == 12 and day == 31:%%月份为12,日为31,则年加一
year = int(year) + 1
month=1
day=1
print('%04d-%02d-%02d' % (year, month, day))
elif month == 12 and day<32:%%月份为12,日小于31,则日加一
day = int(day) + 1
print('%04d-%02d-%02d' % (year, month, day))
elif month>12 or day>31:%%输入日期,月份大于12,日大于31,则输入错误
print('error input')
elif (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:%%判断年是否为闰年,针对2月份来做约束
if month == 2 and day == 29:
month = int(month) + 1
day = 1
print('%04d-%02d-%02d' % (year, month, day))
else:
if day <32:
day = int(day) + 1
print('%04d-%02d-%02d' % (year, month, day))
else:
if month == 2 and day == 28:
month = int(month) + 1
day = 1
print('%04d-%02d-%02d' % (year, month, day))
else:
if day <32:
day = int(day) + 1
print('%04d-%02d-%02d' % (year, month, day))

随机推荐

  1. 2019windows上安装Mac OS 10.14过程详细截图

    之前VMware12里面的Mac OS10.10升级后,键盘鼠标就用不了了.试了几次都这样,只能重装VMware14, 安装Mac OS 10.14系统.把步骤截下图,分享一下. 一.材料准备 1.虚 ...

  2. 针对媒体不实报道误导大众--抹黑C#工资垫底

    最近注意到一些媒体故意抹黑C# 工资垫底,参见 https://www.toutiao.com/i6741889572931633668/: 通过搜索引擎搜索<编程语言薪酬排行:Python薪资 ...

  3. Spring 梳理-profile与条件化定义bean

    定义profile <beans> //root <beans profile="dev"> <bean id=.../> </beans ...

  4. springboot启动后自动退出

    有时新建的springboot启动后自动退出运行,如图所示: 此种情况大都数是因为pom文件加入了tomcat的依赖,与springboot内嵌的tomcat冲突导致,所以只需将pom文件中的tomc ...

  5. EJB生成代码后遇到transient错误

    启动服务的时候遇到这样的错误: 解决方案: 1.找到对应的模块的SesBean文件 2.去掉transient 3.重启服务即可

  6. Terminal MultipleXer---终端复用器tmux基本使用

    Terminal MultipleXer---终端复用器tmux 使用场景:1.scp大文件 2:编译大文件 3:多窗口对比文件 1.安装tmux [root@localhost ~]# yum in ...

  7. .netcore+vue+elementUI 前后端分离---支持前端、后台业务代码扩展的快速开发框架

    框架采用.NetCore + Vue前后端分离,并且支持前端.后台代码业务动态扩展,框架内置了一套有着20多种属性配置的代码生成器,可灵活配置生成的代码,代码生成器界面配置完成即可生成单表(主表)的增 ...

  8. Object.keys方法详解

    一.官方解释 Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 .如果对象的键-值都不 ...

  9. MySQL 视图(合并多表数据)引发的严重性能问题

    问题背景: 一.客户环境连续多次出现性能问题,系统登入异常,数据库CPU告警. 处理过程: 1>协助排查数据库性能问题时发现如下两个较频繁的SQL导致严重的性能问题(均使用了视图合并多表数据): ...

  10. 记一次客户DB CPU短时间内冲高至99%处理

    问题背景: 客户反映DB CPU短时间内冲高,查询变得缓慢,记录此背景下的处理方式 1> 查看系统负载及相关sql 2> 查看相关sql的执行计划 3> 想看相关sql的执行计划是否 ...