[python] 파이썬 workalendar에서 휴일이 포함된 주말 확인하기
파이썬에서 workalendar
라이브러리는 특정 지역의 공휴일, 비공휴일 등 다양한 날짜 정보를 제공합니다. 이는 비즈니스 로직을 구현하거나 휴일을 고려한 일정 관리에 유용하게 사용할 수 있습니다.
하지만 때로는 주말에도 휴일이 포함될 수 있다는 점을 고려해야 할 때가 있습니다. 예를 들어, 국경일이 토요일에 떨어진다면 그 날은 주말이지만 휴일로 간주되는 경우가 있습니다. 이럴 때 workalendar
를 사용하여 해당 날짜가 실제 휴일인지 확인할 수 있습니다.
아래는 workalendar
를 사용하여 파이썬에서 휴일이 포함된 주말을 확인하는 예시 코드입니다.
from workalendar.asia import SouthKorea
from datetime import date, timedelta
def is_holiday_on_weekend(year, month, day):
cal = SouthKorea()
target_date = date(year, month, day)
# 주말인지 확인
if target_date.weekday() >= 5:
# 해당 날짜가 실제 휴일인지 확인
if cal.is_working_day(target_date):
return True
return False
# 테스트
year = 2022
month = 1
day = 1
result = is_holiday_on_weekend(year, month, day)
print(result) # output: True
위의 코드에서는 workalendar
에서 제공하는 SouthKorea
클래스를 이용하여 대한민국의 휴일 정보를 가져옵니다. 그리고 is_holiday_on_weekend
함수는 입력받은 날짜가 주말이고 휴일인지 확인한 후에 True
또는 False
값을 반환합니다. 지금은 테스트로 2022년 1월 1일을 주고 실행한 결과가 True
로 나옵니다.
이와 같이 workalendar
를 사용하면 휴일이 포함된 주말을 쉽게 확인할 수 있습니다. 또한, workalendar
라이브러리에서는 다른 나라의 휴일 정보도 제공하므로 필요에 따라 해당 지역의 휴일을 확인할 수 있습니다.