python 2.7.14
计算订购一个月产品的到期日期
【思考过程及实现思路】
首先判断是否闰年,这样发生在2月份产品订购可以很好的处理边界情况。
默认“订购一个月”为固定30天
接下来就是加上这30天,判断月份、年份是否进位。

另外还给出了默认自然月的订购情况,在注释里,逻辑相对更简单。
测试的话直接运行、输入对应日期即可。


# coding: utf-8def getExpirationDate(year, month, day):# 判断闰年及对应每月天数if (year%4==0 and year%100!=0) or year%400==0:days_per_month=[31,29,31,30,31,30,31,31,30,31,30,31]else:days_per_month=[31,28,31,30,31,30,31,31,30,31,30,31]if day>days_per_month[month-1] or month>12:return "您输入的日期有误"#按固定30天算,可处理 2018 1 31 → 2018 3 2 这种边界情况day += 30while day>days_per_month[month-1]:day = day-days_per_month[month-1]month = month+1# 如果是下一年if month==13:year+=1month=1'''如果按自然月,以上则为:if day>days_per_month[month]:day = days_per_month[month]month = month+1if month==13:year+=1month=1'''return [year, month, day]print 'Please enter the date(exp:2018 1 31)'while True:try:year,month,day=map(int,raw_input('Date:').split())print getExpirationDate(year, month, day)except:break

转载于:https://www.cnblogs.com/aubucuo/p/ms1.html

订购一个月产品,计算多久后到期相关推荐

  1. java date 一个月_java中的日期加一个月的计算

    Homepage URL http://flysky-1.at.vwdhosting.net FTP server name: ftp://flysky-1@ftp6.vwdhosting.net L ...

  2. 自学python后自己接单-详解 | Python学多久才能独立接单赚钱?一个月足够了!

    作者:Jhankar Mahbub 机器之心编译 参与:王子嘉.Geek AI 毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python ...

  3. 100g流量在电脑上可以用多久_三大运营商5G体验方案出炉!100G一个月够不够?...

    前段时间,工信部向中国移动.中国联通.中国电信.中国广电发放5G商用牌照,这也意味着,我国5G网络正式开始被商用.并且目前三大运营商都已完成了5G网络下的终端组网测试,计划于今年第三季度开始进行试商用 ...

  4. 一个网课开发者复工后的一个月

    0x01 - 参与历史 2020年3月2日,周一,早上7点,天已经亮了有一会儿了,我关掉了台灯.又是熬了一夜,好在终于上线完成了安徽省第一天的网课,我瘫在椅子上,打算刷会儿手机缓一下再去睡. 刷到上面 ...

  5. 网站服务器欠费多久,服务器到期后多久释放

    服务器到期后多久释放 内容精选 换一换 当您不再需要裸金属服务器时,可将其删除.服务器的状态一旦变为"已删除",就不再产生与该服务器相关的费用.在您删除服务器之后,短时间内仍可在控 ...

  6. 怎么用linux设计一个小程序,“Linux”小程序发布一个月后,我们发现了什么

    原标题:"Linux"小程序发布一个月后,我们发现了什么 这一个月来,这个小程序得到了八千多人的使用,一百多位贡献者实际参与了翻译贡献,其中贡献最高的"Datura st ...

  7. 【转】使用PHP计算上一个月的今天

    转自:http://www.phppan.com/2011/06/php-last-month-today/ 一日,遇到一个问题,求上一个月的今天. 最开始我们使用 strtotime("- ...

  8. 被通知一个月后离职,我改了代码。。。

    点击上方[全栈开发者社区]→右上角[...]→[设为星标⭐ 点击领取全栈资料:全栈资料 当冲突爆发且到了必须让程序员离开时--那让他们"及时离开"吧. 假如你已经对某个开发人员下发 ...

  9. java计算一个月有几周_java 如何获取 一个月 有多少周

    展开全部 你说需要计算一个月有多少周,若是指,一月,二月一直到十二月每个月有多少周的话,可以用32313133353236313431303231363533e59b9ee7ad94313333613 ...

最新文章

  1. 【 FPGA 】MATLAB 生成 FIR 滤波器的操作步骤(包括生成Verilog HDL代码以及仿真过程)
  2. 二. 主流视频编码标准的发展
  3. 求二进制数中1的个数
  4. Python学习进程
  5. 盘点那些面试中最常问的MySQL问题
  6. dp聚类算法_【深度】基于残差分析的混合属性数据聚类算法
  7. 一位网络工程师的终告
  8. 云+AI+5G时代,华为云已准备好多元化云服务架构
  9. 如何区分两列中不同数据_如何区分原装数据线和山寨数据线
  10. C++读写文件总结 .
  11. Library弱依赖打包
  12. win10中bochs仿真linux0.11环境快速搭建方法
  13. Django之开发微信小程序后端-Django篇②
  14. [zz]在港内地学生办理工作签证指南(IANG)
  15. LineRenderer组件
  16. 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危害病人的病情变化,还可能会延误抢救时机.某医院打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并且分析开发这个系统
  17. RTSP,Java实现简单的RTSP报文交换
  18. 【Java基础】swing-图形界面学习(下)
  19. Leetcode学习笔记(974. 和可被 K 整除的子数组)
  20. sketch android 切图,Sketch如何快速切图?三分钟教你掌握切图方案

热门文章

  1. python怎么做面板数据分析_利用python进行数据分析之准备(一)
  2. python.nlp随笔(九)上下文无关文法
  3. 2023子比主题美化插件
  4. 07 python 要点 (正则化)
  5. mybatis中大于,小于和特殊符号的写法
  6. iOS 应用苹果地图
  7. 桥梁结构健康监测方案
  8. 利用鸿鹄优化共享储能的SCADA 系统功能,赋能用户数据自助分析
  9. 在ubuntu上为android系统编写Linux驱动程序【转】
  10. 伪随机序列调相位C语言,伪随机序列的研究与仿真.doc