python报表自动化系列 - 计算某年某个月的天数

简介: python报表自动化系列 - 计算某年某个月的天数

Python计算某年某个月的天数(公历)

李俊才

邮箱:291148484@163.com

【函数说明】

传入参数yearmont表示某年的某个具体月份,返回该月的天数。

【实现方法】

每单我们指定一个公元纪年的年份,如2020年2月,要求函数返回该月有多少天。公元纪年法中1、3、5、7、8、10、12月为大月,都是31天;4、6、9、11月为小月,各有30天;依据年号是否剖能被4整除而区分平年与闰年,平年(不能被4整除的年)2月28天、闰年(可以被4整除的年)2月29天。

【代码实现】

def get_days(yearmonth):
  '''计算某年某个月的天数'''
    ym = str(yearmonth)
    try:
        year = ym[:4:1]
        month = ym[4:7:1]
    except:
        raise ValueError('警告:数据格式错误!')
    year = int(year)
    month = int(month)
    days = {1:31, 3:31, 5:31, 7:31, 8:31, 10:31, 12:31,   #不论大月还是小月都用查字典法,定义大小月天数字典
            4:30, 6:30, 9:30, 11:30}
    if year %4 != 0:             # 不被4整除,则是平年
        days[2] = 28             # 平年2月28天,向字典中添加2月28天键值对
    else:                        # 否则,是闰年
        days[2] = 29             # 闰年2月29天,向字典中添加2月29天键值对
    return days[month]           # 返回字典查询结果

供大家参考,转载请指明出处。

目录
相关文章
|
2天前
|
Python
Python 自动化操作 Excel - 02 - xlwt
Python 自动化操作 Excel - 02 - xlwt
25 14
|
2天前
|
Python
Python 自动化操作 Excel - 03 - xlutils
Python 自动化操作 Excel - 03 - xlutils
17 13
|
2天前
|
Python
Python 自动化操作 Excel - 01 - xlrd
Python 自动化操作 Excel - 01 - xlrd
16 9
|
3天前
|
机器学习/深度学习 并行计算 大数据
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧2
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
20 10
|
2天前
|
数据挖掘 iOS开发 MacOS
利用Python计算农历日期
利用Python计算农历日期
12 4
|
1天前
|
存储 自然语言处理 数据处理
使用Python计算多个集合的交集详解
使用Python计算多个集合的交集详解
10 1
|
3天前
|
索引 Python
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧1
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
34 4
|
2天前
|
Python
Datetime模块应用:Python计算上周周几对应的日期
Datetime模块应用:Python计算上周周几对应的日期
11 1
|
6天前
|
测试技术 数据安全/隐私保护 开发者
自动化测试的奥秘:如何用Selenium和Python提升软件质量
【9月更文挑战第35天】在软件开发的海洋中,自动化测试是那艘能引领我们穿越波涛的帆船。本文将揭开自动化测试的神秘面纱,以Selenium和Python为工具,展示如何构建一个简单而强大的自动化测试框架。我们将从基础出发,逐步深入到高级应用,让读者能够理解并实现自动化测试脚本,从而提升软件的质量与可靠性。
|
2天前
|
IDE 开发工具 Python
Python自动化操作word--批量替换word文档中的文字
Python自动化操作word--批量替换word文档中的文字