[python] 파이썬 workalendar를 사용하여 특정 날짜의 공휴일과 주말이 몇 주 뒤에 있는지 계산하기

파이썬에서 workalendar 라이브러리는 특정 날짜의 공휴일과 주말을 계산하는 기능을 제공합니다. 이 라이브러리를 사용하면 주어진 날짜로부터 얼마 후에 공휴일과 주말이 있는지 쉽게 계산할 수 있습니다.

workalendar 라이브러리 설치 및 사용법

workalendar 라이브러리를 설치하기 위해서는 파이썬 패키지 관리자인 pip을 사용합니다. 아래의 명령어를 실행하여 workalendar를 설치합니다.

pip install workalendar

이제 workalendar 라이브러리를 사용하여 특정 날짜의 공휴일과 주말을 계산해보겠습니다.

from workalendar.europe import France
from datetime import date, timedelta


def get_holidays_and_weekend(date_str, num_weeks):
    cal = France()
    target_date = date.fromisoformat(date_str)
    target_date_plus_weeks = target_date + timedelta(weeks=num_weeks)
    holidays = cal.holidays(
        start_date=target_date,
        end_date=target_date_plus_weeks
    )
    weekends = cal.get_weekend_days(
        start_date=target_date,
        end_date=target_date_plus_weeks
    )
    return holidays, weekends


target_date_str = "2022-01-01"
num_weeks = 4

holidays, weekends = get_holidays_and_weekend(target_date_str, num_weeks)

print("Results for {} and the following {} weeks:".format(target_date_str, num_weeks))
print("Holidays:", holidays)
print("Weekends:", weekends)

위 예제 코드에서는 workalendar 라이브러리의 France 클래스를 사용하여 프랑스의 공휴일과 주말을 계산합니다. get_holidays_and_weekend 함수는 특정 날짜와 몇 주 뒤까지의 공휴일과 주말을 계산합니다. 함수는 해당 주의 공휴일과 주말을 반환합니다.

예제 코드를 실행하면 “2022-01-01” 날짜로부터 4주 뒤에 있는 공휴일과 주말을 출력합니다.

참고 자료