Home

Awesome

中国节假日

Package Travis License README

判断某年某月某一天是不是工作日/节假日。 支持 2004年 至 2024年,包括 2020年 的春节延长。

安装

pip install chinesecalendar

升级

pip install -U chinesecalendar

由于次年的节假日安排,取决于国务院发布的日程。 所以本项目一般会在国务院更新以后,发布新的版本。 按照以往的经验,一般是每年的 11月 前后发布新版本。

样例

import datetime

# 判断 2018年4月30号 是不是节假日
from chinese_calendar import is_holiday, is_workday
april_last = datetime.date(2018, 4, 30)
assert is_workday(april_last) is False
assert is_holiday(april_last) is True

# 或者在判断的同时,获取节日名
import chinese_calendar as calendar  # 也可以这样 import
on_holiday, holiday_name = calendar.get_holiday_detail(april_last)
assert on_holiday is True
assert holiday_name == calendar.Holiday.labour_day.value

# 还能判断法定节假日是不是调休
import chinese_calendar
assert chinese_calendar.is_in_lieu(datetime.date(2006, 2, 1)) is False
assert chinese_calendar.is_in_lieu(datetime.date(2006, 2, 2)) is True

其它语言

假如你没法使用Python, 你也可以转译现成的常量文件来获取最全的节假日安排表。

贡献代码

  1. Fork + Clone 项目到本地
  2. 修改节假日定义
  3. 执行脚本自动生成常量文件
  4. 提交PR