[python] 파이썬 workalendar를 사용하여 특정 날짜의 이전/다음 영업일과 휴일 사이의 모든 영업일 날짜 가져오기

파이썬의 workalendar 라이브러리는 날짜와 관련된 작업을 수행하는 강력한 도구입니다. workalendar를 사용하면 특정 날짜의 이전 또는 다음 영업일을 찾는 것과 같은 다양한 작업을 수행할 수 있습니다. 이번 글에서는 workalendar를 사용하여 특정 날짜와 휴일 사이의 모든 영업일 날짜를 가져오는 방법에 대해 알아보겠습니다.

1. workalendar 설치하기

먼저, workalendar를 설치해야 합니다. pip를 사용하여 아래 명령을 실행하여 workalendar를 설치합니다.

pip install workalendar

2. workalendar로 영업일 계산하기

이제 우리는 workalendar를 사용하여 영업일을 계산할 수 있습니다. 아래의 예제 코드는 특정 날짜의 이전/다음 영업일과 휴일 사이의 모든 영업일을 찾는 방법을 보여줍니다.

from workalendar.asia import SouthKorea

def get_business_days(start_date, end_date):
    cal = SouthKorea()
    business_days = cal.get_working_days(start_date, end_date)
    return business_days

# 테스트를 위한 예제 날짜 설정
start_date = datetime.date(2022, 8, 17)
end_date = datetime.date(2022, 8, 31)

business_days = get_business_days(start_date, end_date)
print(business_days)

위 코드에서 get_business_days 함수는 workalendarget_working_days 메서드를 호출하여 특정 날짜의 영업일을 가져옵니다. 이 함수는 start_dateend_date 매개변수로 시작일과 종료일을 받습니다.

위 예제를 실행하면 특정 날짜의 이전/다음 영업일과 휴일 사이의 모든 영업일을 출력할 것입니다.

3. 결과 확인하기

위 예제를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

[datetime.date(2022, 8, 17), datetime.date(2022, 8, 18), datetime.date(2022, 8, 19), datetime.date(2022, 8, 22), datetime.date(2022, 8, 23), datetime.date(2022, 8, 24), datetime.date(2022, 8, 25), datetime.date(2022, 8, 26), datetime.date(2022, 8, 29), datetime.date(2022, 8, 30), datetime.date(2022, 8, 31)]

위 결과를 보면 start_dateend_date 사이의 모든 영업일이 포함된 리스트를 얻을 수 있습니다. 이를 활용하여 필요한 작업에 적용할 수 있습니다.

4. 결론

파이썬의 workalendar 라이브러리를 사용하면 특정 날짜의 이전/다음 영업일과 휴일 사이의 모든 영업일을 손쉽게 가져올 수 있습니다. 이를 활용하여 날짜와 관련된 작업을 더욱 효율적으로 수행할 수 있습니다.

더 자세한 내용은 workalendar의 공식 문서를 참조하시기 바랍니다.

참고 자료: