#_*_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. .Net Core WebApi(二)在Windows服务器上部署

    上一篇学习到了如何简单的创建.Net Core Api和Swagger使用,既然写了接口,那么就需要部署到服务器上才能够正式使用.服务器主要用到了两种系统,Windows和Linux,.Net和Win ...

  2. Windows server 2008 快速搭建域环境

    之前根据网上的教程搭建,然后出现了很多问题,最后摸索出了一个比较稳妥一点的方法. 对于选系统这里,虽然上一篇文章已经说过了,这里也再强调一下,我使用的是08的系统,使用其他系统的暂不做评价,使用08系 ...

  3. kvm-web管理工具webvirtmgr

    前言: 使用开源的虚拟化技术,对公司自有的少数服务器进行虚拟化,在满足业务需求的同时,并未增加投入,同时也避免了使用云主机的不便,技术层面,kvm是开源的虚拟化产品,虚拟化性能出众,更重要的是免费!! ...

  4. java算法基础范例

    题目1:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?  1.程序分析: 兔子的规律为数列1,1,2,3 ...

  5. js禁止刷新的简单方法

    //禁止用F5键  这个是键盘按下时触发document.onkeydown = function() { if ( event.keyCode==116) {event.keyCode = 0; e ...

  6. 在创建activiti5..22所需的25张表时 ,所用的方法和遇到的问题。

    最近在学习关于activiti流程设计的相关内容,首先第一步就需要了解25张activiti相关的表,具体的每张表的含义 请自行百度. 这里讲一下 用java代码生成所需要的25张表,很简单: pub ...

  7. profile文件的错误加载与基本命令间的映射

    一.绪论 [因为这篇心得是原创的,所以如果有哪处总结或者意见不足的地方,欢迎各位大神的批评和意见,共同学习,谢谢了!] 早些时候,需要在centos6.4系统中配置单机版和集群版单节点的hadoop ...

  8. .Net Core 商城微服务项目系列(十一):MQ消费端独立为Window服务+消息处理服务

    之前使用MQ的时候是通过封装成dll发布Nuget包来使用,消息的发布和消费都耦合在使用的站点和服务里,这样会造成两个问题: 1.增加服务和站点的压力,因为每次消息的消费就意味着接口的调用,这部分的压 ...

  9. WCF尝试创建与发布IIS(含问题描述)

    技术贴技术贴就直接讲技术来,客套的话我也不多说了,各位看官包涵包涵. 跟着园内高手一步一步发布成功,欣喜若狂之际,发个贴纪念纪念一下. 废话不多说,不正确之处,还望大家积极指出,共同进步.哈哈~~~ ...

  10. Linux Shell 基础知识(二)

    1.本文知识结构 2.文件的查询与检索 2.1. cd 目录切换 找到文件/目录位置:cd 切换到上一个工作目录: cd - 切换到home目录: cd or cd ~ 显示当前路径: pwd 更改当 ...