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

파이썬의 workalendar 라이브러리를 사용하면 특정 날짜의 공휴일과 주말을 쉽게 계산할 수 있습니다. 이 글에서는 workalendar를 사용하여 특정 날짜로부터 몇 개월 뒤에 있는 공휴일과 주말을 계산하는 방법에 대해 알아보겠습니다.

workalendar 설치하기

먼저, workalendar를 설치해야 합니다. 아래의 명령어를 사용하여 workalendar를 설치할 수 있습니다.

pip install workalendar

특정 날짜의 공휴일과 주말 계산하기

다음은 파이썬 코드를 사용하여 특정 날짜의 공휴일과 주말을 계산하는 예제입니다. 아래의 예제 코드에서는 현재 날짜로부터 6개월 뒤에 있는 공휴일과 주말을 계산합니다.

from datetime import date, timedelta
from workalendar.asia import SouthKorea

def calculate_holidays_and_weekends(start_date, months):
    cal = SouthKorea()
    end_date = start_date + timedelta(days=months * 30)  # 간단하게 개월 수를 계산하기 위해 30일을 사용합니다.

    dates = []
    for dt in cal.iter_between(start_date, end_date):
        dates.append(dt)

    holidays = [dt for dt in dates if cal.is_working_day(dt)]
    weekends = [dt for dt in dates if not cal.is_working_day(dt)]

    return holidays, weekends

# 현재 날짜로부터 6개월 뒤에 있는 공휴일과 주말 계산
start_date = date.today()
months = 6
holidays, weekends = calculate_holidays_and_weekends(start_date, months)

print("공휴일:")
for holiday in holidays:
    print(holiday)

print("\n주말:")
for weekend in weekends:
    print(weekend)

위의 코드를 실행하면 현재 날짜로부터 6개월 뒤에 있는 공휴일과 주말이 출력됩니다. calculate_holidays_and_weekends 함수는 시작 날짜와 개월 수를 인자로 받아 해당 기간 동안의 날짜를 계산하고, workalendar를 사용하여 공휴일과 주말을 구분합니다.

이처럼 workalendar 라이브러리를 사용하면 특정 날짜로부터 공휴일과 주말이 몇 개월 뒤에 있는지 쉽게 계산할 수 있습니다.

참고 자료