Python自定义函数计算给定日期是该年第几天的方法示例


Posted in Python onMay 30, 2019

本文实例讲述了Python自定义函数计算给定日期是该年第几天的方法。分享给大家供大家参考,具体如下:

写一个函数,计算给定日期是该年的第几天.

满足闰年的条件:

  • 闰年是公历中的名词,能被4整除但不能被100整除,或能被400整除的年份即为闰年。
  • 闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。补上时间差的年份为闰年。闰年共有366天(1-12月分别为31天,29天,31天,30天,31天,30天,31天,31天,30天,31天,30天,31天)。
  • 凡阳历中有闰日(二月为二十九日)的年;闰余(岁余置闰。阴历每年与回归年相比所差的时日);注意闰年(公历中名词)和闰月(农历中名词)并没有直接的关联,公历中只分闰年和平年,平年有365天,而闰年有366天(2月中多一天);平年中也可能有闰月(如2017年是平年,农历有闰月,闰6月)。

代码如下:

#coding=utf-8
#写一个函数,计算给定日期是该年的第几天.
def count(year,month,day):
 count = 0
 #判断该年是平年还是闰年
 if year%400==0 or (year%4==0 and year%100!=0):
  print('%d年是闰年,2月份有29天!'%year)
  li1 = [31,29,31,30,31,30,31,31,30,31,30,31]
  for i in range(month-1):
   count += li1[i]
  return count+day
 else:
  print('%d年是平年,2月份有29天!' % year)
  li2 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
  for i in range(month-1):
   count +=li2[i]
  return count+day
if __name__ == "__main__":
 year = int(input('请输入年份:'))
 month = int(input('请输入月份:'))
 day = int(input('请输入日期:'))
 count = count(year,month,day)
 print('%d年%d月%d日是今年的第%d天!'%(year,month,day,count))

运行结果:

请输入年份:2017
请输入月份:8
请输入日期:17
2017年8月17日是今年的第229天!

PS:这里再为大家推荐几款关于日期与天数计算的在线工具供大家使用:

在线日期/天数计算器:
http://tools.3water.com/jisuanqi/date_jisuanqi

在线万年历日历:
http://tools.3water.com/bianmin/wannianli

在线阴历/阳历转换工具:
http://tools.3water.com/bianmin/yinli2yangli

Unix时间戳(timestamp)转换工具:
http://tools.3water.com/code/unixtime

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python读取图片EXIF信息类库介绍和使用实例
Jul 10 Python
Python爬虫之xlml解析库(全面了解)
Aug 08 Python
python 中的int()函数怎么用
Oct 17 Python
Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
Jan 15 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python实现自动上京东抢手机
Feb 06 Python
使用python将图片按标签分入不同文件夹的方法
Dec 08 Python
python之Flask实现简单登录功能的示例代码
Dec 24 Python
python2和python3在处理字符串上的区别详解
May 29 Python
python3使用GUI统计代码量
Sep 18 Python
Django中FilePathField字段的用法
May 21 Python
python实现简单石头剪刀布游戏
Oct 24 Python
基于Python打造账号共享浏览器功能
May 30 #Python
Python实现带下标索引的遍历操作示例
May 30 #Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
May 29 #Python
python2和python3在处理字符串上的区别详解
May 29 #Python
python TF-IDF算法实现文本关键词提取
May 29 #Python
详解Python odoo中嵌入html简单的分页功能
May 29 #Python
Python 3.8中实现functools.cached_property功能
May 29 #Python
You might like
一个可查询所有表的“通用”查询分页类
2006/10/09 PHP
让PHP支持页面回退的两种方法
2008/01/10 PHP
PHP登录环节防止sql注入的方法浅析
2014/06/30 PHP
使用XHGui来测试PHP性能的教程
2015/07/03 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
PHP 的比较运算与逻辑运算详解
2016/05/12 PHP
php中get_magic_quotes_gpc()函数说明
2017/02/06 PHP
多浏览器兼容的获取元素和鼠标的位置的js代码
2009/12/15 Javascript
仿当当网淘宝网等主流电子商务网站商品分类导航菜单
2013/09/25 Javascript
javascript作用域和闭包使用详解
2014/04/25 Javascript
Adapter适配器模式在JavaScript设计模式编程中的运用分析
2016/05/18 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
Vue组件化开发思考
2018/02/02 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
JavaScript模块管理的简单实现方式详解
2019/06/15 Javascript
微信小程序实现卡片层叠滑动效果
2019/06/21 Javascript
react native 仿微信聊天室实例代码
2019/09/17 Javascript
微信小程序自定义弹出模态框禁止底部滚动功能
2020/03/09 Javascript
vue iview 隐藏Table组件里的某一列操作
2020/11/13 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
python实现list元素按关键字相加减的方法示例
2017/06/09 Python
使用python实现接口的方法
2017/07/07 Python
python中子类调用父类函数的方法示例
2017/08/18 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
Python爬虫爬取博客实现可视化过程解析
2020/06/29 Python
利用django创建一个简易的博客网站的示例
2020/09/29 Python
css背景图片的背景裁切、背景透明度、背景变换等效果运用
2012/12/24 HTML / CSS
使用phonegap进行本地存储的实现方法
2017/03/31 HTML / CSS
意大利巧克力店:Chocolate Shop
2019/07/24 全球购物
副科竞争上岗演讲稿
2014/05/12 职场文书
2015年银行工作总结范文
2015/04/01 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
傲慢与偏见电影观后感
2015/06/10 职场文书
安全教育日主题班会
2015/08/13 职场文书