[python] 파이썬 workalendar를 사용하여 특정 날짜의 이전 영업일과 주말까지의 간격 계산하기
먼저, workalendar 라이브러리를 설치해야 합니다. 다음 명령어를 사용하여 라이브러리를 설치할 수 있습니다:
pip install workalendar
workalendar 라이브러리를 설치한 후, 다음과 같이 코드를 작성하여 특정 날짜의 이전 영업일과 주말까지의 간격을 계산할 수 있습니다:
from datetime import date, timedelta
from workalendar.europe import UnitedKingdom
def calculate_days_until_previous_working_day(date_str):
cal = UnitedKingdom()
current_date = date.fromisoformat(date_str)
previous_working_day = cal.find_previous_working_day(current_date)
days_until_previous_working_day = (current_date - previous_working_day).days + 1
return days_until_previous_working_day
def calculate_days_until_weekend(date_str):
cal = UnitedKingdom()
current_date = date.fromisoformat(date_str)
nearest_weekend_day = cal.find_nearest_weekend(current_date)
days_until_weekend = (nearest_weekend_day - current_date).days
return days_until_weekend
# 예시 날짜 계산
current_date_str = "2022-01-15"
days_until_previous_working_day = calculate_days_until_previous_working_day(current_date_str)
days_until_weekend = calculate_days_until_weekend(current_date_str)
print(f"이전 영업일까지 남은 일수: {days_until_previous_working_day}일")
print(f"다가오는 주말까지 남은 일수: {days_until_weekend}일")
위의 코드는 주어진 날짜의 이전 영업일과 주말까지의 간격을 계산하는 함수들을 정의하고, 예시 날짜를 기준으로 실행 결과를 출력하는 부분입니다. 예시 날짜 계산을 변경하고 싶을 경우, current_date_str
변수의 값을 원하는 날짜로 변경하면 됩니다.
이렇게 작성한 코드를 실행하면 선택한 날짜와 이전 영업일, 주말까지의 간격을 계산하여 결과를 출력할 수 있습니다.
참고문헌:
- Workalendar 공식 문서
- 파이썬 datetime 모듈 문서