当前位置:首页>python>Python中的chinese_calendar库

Python中的chinese_calendar库

  • 2026-10-11 05:38:51
Python中的chinese_calendar库

chinese_calendar 是一个专门用于处理中国法定节假日和调休的 Python 库。它会根据国务院每年发布的官方安排,判断一个日期是工作日、节假日还是调休日。其优点是使用方便、结果准确,缺点是每年需要更新,以便导入最新的节假日信息。

库的安装

pip install chinese_calendar

常用的函数

  1. is_workday(date_obj)  用于判断是否为工作日。

    date_obj:datetime.date 类型的日期对象

    返回值bool: True 表示是工作日,False 表示不是

    date_objimport chinese_calendar as ccimport datetime result1 = cc.is_workday(datetime.date(2025, 10, 1)) #国庆节  print(result1)result2 = cc.is_workday(datetime.date(2025, 10, 11))  #国庆节调休日,需要上班print(result2)

    结果为:

    False

    True

  2. is_holiday(date_obj) 判断是否为节假日。

        date_obj:datetime.date 类型的日期对象

        返回值bool: True 表示是法定节假日,False 表示不是

    result1 = cc.is_workday(datetime.date(2025, 10, 1)) #国庆节  print(result1)result2 = cc.is_workday(datetime.date(2025, 10, 11))  #国庆节调休日,需要上班print(result2)

    结果为:

    True

    False

  3. get_holiday_detail() 获取节假日详情

       date_obj:datetime.date 类型的日期对象

        返回值为元组:(bool,str)其中第一个元素表示是否为节假日,第二个元素是节假日名称

result2 = cc.get_holiday_detail(datetime.date(2026,5,1)) print(result2)

结果为:

4. get_holidays(start, end, include_weekends=True) 获取某段时间内的节假日列表

start:起始日期,datetime.date 类型

end:结束日期,datetime.date 类型

include_weekends:布尔值,是否包含普通周末,默认为 True

返回值: 一个包含所有节假日日期的列表

holidays = cc.get_holidays(datetime.date(2025,1,1),datetime.date(2025,12,31),include_weekends=True)for each in holidays:    print(each)

5.get_workdays(start, end)获取某段时间内的工作日列表

start:起始日期,datetime.date 类型

end:结束日期,datetime.date 类型(包含该日期)

workdays = cc.get_workdays(datetime.date(2025,1,1),datetime.date(2025,12,31))for each in workdays:    print(each)

结论:通过调用该Python库,很方便的就可以查询出某个时间段内的节假日,大大减轻了自己判断法定节假日和工作日工作量。尤其适用于对节假日要求比较高的场合,例如医院中对病历三日归档的要求,必须将节假日排除在计算范围内。

最新文章

随机文章