python

您所在的位置:网站首页 元宵节法定节假日调休吗怎么算 python

python

#python| 来源: 网络整理| 查看: 265

python的第三方模块chinesecalendar,提供了判断工作日、休息日、节假日的方法。 不仅可以判断法定节假日,还可以返回节假日的名称,对调休日也可以做出判断,十分好用。 具体用法如下: 1、chinesecalendar模块安装 进入到本地python安装的Scripts文件路径下, 输入安装命令:pip install chinesecalendar,回车即可安装。 在这里插入图片描述 注:每一年年底都需更新到最新版本的chinesecalendar,才会支持最新的一年。如上图安装的是最新版本,支持2004年-2022年。如果不更新,超过版本支持的年份,将会报错,如这里的版本只支持到2022年,超过将会报错如下: 在这里插入图片描述

2、chinesecalendar模块常见方法及导入

该模块常用的方法,如下表:

模块说明is_workday判断是否为工作日,语法:is_workday(date)is_holiday判断是否为节假日/休息日,语法:is_holiday(date)is_in_lieu判断是否为调休日,语法:is_in_lieu(date)get_holiday_detail判断是否为节假日、节假日名称,语法:get_holiday_detail(date)返回值:元组,如,(True, ‘Dragon Boat Festival’),Dragon Boat Festival-端午节get_workdays传入开始日期和结束日期,得到工作日的日期,语法:get_workdays(start_date,end_date)get_holidays传入开始日期和结束日期,得到休息日的日期,语法:get_holidays(start_date,end_date)

导入该模块的方法,如,导入is_workday方法

from chinese_calendar import is_workday

3、使用实例

3.1、输入日期,判断这一天是工作日or休息日(包含调休日),并且判断是否为节假日,如果是,输出节日名称。

import datetime from chinese_calendar import is_workday, is_holiday, is_in_lieu, get_holiday_detail while True: time1 = input('请输入XXXX-XX-XX格式的日期:') time2 = datetime.datetime.strptime(time1, '%Y-%m-%d') if is_workday(time2): print(time1+":是工作日") if is_in_lieu(time2): print(time1+":是调休日") if is_holiday(time2): print(time1 + ":是休息日") if get_holiday_detail(time2)[1] is not None: print('节日名:'+get_holiday_detail(time2)[1])

在这里插入图片描述 3.2、打印某个时间区间,是工作日的日期 如,打印出2022年5月1日-2022年5月31,是工作日的日期

from datetime import datetime, date from chinese_calendar import get_workdays # 输出2022.5.1-2022.5.31的工作日 work_day = get_workdays(datetime(2022, 5, 1), datetime(2022, 5, 31)) work_day = [date.strftime(i, '%Y-%m-%d') for i in work_day] print(work_day)

在这里插入图片描述 3.3、打印某个时间区间,是休息日的日期 如,打印出2022年5月1日-2022年5月31,是休息日的日期

from datetime import datetime,date from chinese_calendar import get_holidays # 输出2022.5.1-2022.5.31d的节假日 hol_day = get_holidays(datetime(2022, 5, 1), datetime(2022, 5, 31)) hol_day = [date.strftime(i, '%Y-%m-%d') for i in hol_day] print(hol_day)

在这里插入图片描述 注:上面代码中还用到了datetime模块,主要用来字符串与时间格式数据的转换。

以上就是chinesecalendar模块的用法。 微信关注【一位代码】,了解更多关于python、mysql相关问题解决办法。 -end-



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3