python 利用chinese_calendar 获取上一个工作日日期

**截止文章发布chinese_calendar版本为1.8.0,大约在每年的11月份更新次年的节假日新版本

import datetime
from chinese_calendar import is_workday


def get_pervious_work_day(day: datetime):
    """获取上一个工作日"""
    day = day - datetime.timedelta(days=1)
    if is_workday(day):
        return day
    return get_pervious_work_day(day)

测试周六日:

today = datetime.date.today().replace(day=20)
date = get_pervious_work_day(today)
print(date)
python 利用chinese_calendar 获取上一个工作日日期_第1张图片

测试2023春节:

today = datetime.date.today().replace(day=28).replace(month=1)
date = get_pervious_work_day(today)
print(date)
python 利用chinese_calendar 获取上一个工作日日期_第2张图片

测试2023劳动节:

today = datetime.date.today().replace(day=4).replace(month=5)
date = get_pervious_work_day(today)
print(date)
python 利用chinese_calendar 获取上一个工作日日期_第3张图片

测试2023国庆节:

today = datetime.date.today().replace(day=7).replace(month=10)
date = get_pervious_work_day(today)
print(date)
python 利用chinese_calendar 获取上一个工作日日期_第4张图片

Everything is going smoothly.

你可能感兴趣的:(Python开发,python)