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

作者:xuezhangjun 时间:2021-07-25 02:38:10 

本文实例讲述了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.jb51.net/jisuanqi/date_jisuanqi

在线万年历日历:
http://tools.jb51.net/bianmin/wannianli

在线阴历/阳历转换工具:
http://tools.jb51.net/bianmin/yinli2yangli

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

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

来源:https://blog.csdn.net/xuezhangjun0121/article/details/77341636

标签:Python,自定义函数,日期
0
投稿

猜你喜欢

  • FrontPage XP设计教程5——表单的设计

    2008-10-11 12:35:00
  • 什么是gRPC

    2023-01-16 15:23:53
  • Python for Informatics 第11章 正则表达式(一)

    2021-01-27 06:43:43
  • 如何将一个CSV格式的文件分割成两个CSV文件

    2022-02-17 01:24:29
  • python-yml文件读写与xml文件读写

    2022-06-16 06:43:50
  • 使用Python爬虫爬取小红书完完整整的全过程

    2022-03-23 05:12:44
  • 深入分析javascript中console命令

    2024-06-05 09:34:26
  • Python插件机制实现详解

    2021-08-28 06:55:30
  • javascript怎么禁用浏览器后退按钮

    2024-02-25 08:49:45
  • windows下mysql 8.0.13 解压版安装图文教程

    2024-01-17 04:03:56
  • pytorch 权重weight 与 梯度grad 可视化操作

    2021-02-15 22:42:20
  • Javascript图像处理—图像形态学(膨胀与腐蚀)

    2024-04-23 09:27:58
  • python pymysql链接数据库查询结果转为Dataframe实例

    2024-01-16 22:07:29
  • Go中变量命名规则与实例

    2024-05-09 09:55:45
  • git使用.gitignore设置不生效或不起作用问题的解决方法

    2021-06-09 17:17:07
  • Python Map 函数的使用

    2023-09-02 06:27:17
  • keras绘制acc和loss曲线图实例

    2023-10-30 13:10:52
  • Win10下为VSCode配置LaTex编辑器的方法

    2023-08-27 17:20:07
  • 基于python写个国庆假期倒计时程序

    2022-06-04 20:35:32
  • Python爬虫基于lxml解决数据编码乱码问题

    2021-09-11 23:48:44
  • asp之家 网络编程 m.aspxhome.com