可通过四种方法判断指定日期是否为工作日:一、调用国家节假日API接口;二、加载本地节假日配置文件;三、使用chinese-calendar等第三方库;四、基于星期几硬编码判断(不考虑调休与法定假日)。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您需要通过CodeGeeX判断某个指定日期是否为工作日(即是否需要上班),则需结合中国法定节假日安排与每周周一至周五的常规工作日规则。以下是实现该判断的多种方法:
一、调用国家节假日API接口
该方法依赖外部权威节假日服务,可自动识别调休日、法定假日及补班日,覆盖国务院每年发布的放假安排。
1、使用Python调用如“timor Holidays API”或“China Holiday API”等公开接口,传入目标日期参数(格式为YYYY-MM-DD)。
2、解析返回的JSON数据,检查字段如is_workday或type值是否标识为工作日(例如值为1或"workday")。
3、若接口返回status: success且workday: true,则该日期判定为需要上班;若返回workday: false且reason包含“法定假日”或“调休休息”,则不上班。
二、加载本地节假日配置文件
该方法将国务院历年发布的节假日安排预先整理为JSON或CSV格式,由程序读取并匹配日期,避免网络依赖与实时性风险。
1、准备一个holidays.json文件,包含workdays(补班日列表)、holidays(放假起止日期数组)和excludes(永久排除的周末上班日)字段。
2、在CodeGeeX中编写Python函数,先判断目标日期是否为周六或周日;若是,则进一步查workdays列表是否存在该日期。
3、若日期不在holidays范围内、也不在excludes中、且非周末或属于workdays,则返回True,表示需要上班。
CodeGeeX 2.21.0是智谱AI推出的AI编程助手版本,对Inline Chat功能进行了重大优化,包括UI设计升级、支持流式输出以提升响应速度,并新增“查看思路”按钮以便理解代码原理。同时,该版本在编辑器中新增CodeLens控件,支持一键“解释”代码或“添加注释”。目前该工具对个人开发者免费开放。
三、使用第三方Python库(如chinese-calendar)
该方法基于封装好的开源库,内置2004–2099年国务院节假日数据,支持单日查询与批量判断,调用简洁。
1、在Python环境中执行pip install chinese-calendar安装依赖。
2、导入库后调用is_workday(datetime.date(YYYY, MM, DD))函数,传入目标日期对象。
3、函数返回True时,表示该日期为工作日,需正常上班;返回False时,需结合is_holiday()进一步区分是周末还是法定假日。
四、基于规则硬编码判断(基础版)
该方法仅依据星期几进行常规判断,不考虑调休与法定假日,适用于内部系统简易场景或测试基准。
1、将输入日期转换为datetime对象,并调用.weekday()方法获取星期索引(周一为0,周日为6)。
2、若返回值为0、1、2、3或4,则默认视为工作日,需上班;若为5或6,则视为周末,不上班。
3、注意:此方式无法识别国庆调休后的周六上班情况,仅作快速验证用途。

















