[python] dateutil의 rrule 모듈을 사용하여 특정 요일이 포함된 날짜 추출
dateutil
은 파이썬에서 날짜와 시간을 다루기 위한 강력한 라이브러리입니다. rrule
모듈은 날짜의 반복 규칙을 다루기 위한 모듈로, 특정 요일이 포함된 날짜를 추출하는 기능을 제공합니다. 이번 포스트에서는 dateutil
의 rrule
모듈을 사용하여 특정 요일이 포함된 날짜를 추출하는 방법을 알아보겠습니다.
1. dateutil
설치하기
dateutil
은 파이썬 표준 라이브러리에 포함되어 있지 않으므로, 먼저 설치해야 합니다. 다음 명령을 사용하여 dateutil
을 설치할 수 있습니다:
pip install python-dateutil
2. rrule
모듈을 사용하여 날짜 추출하기
rrule
모듈을 사용하여 특정 요일이 포함된 날짜를 추출하기 위해서는 다음과 같은 단계를 따라야 합니다:
rrule
모듈을 임포트합니다:
from dateutil.rrule import *
rrule
함수를 사용하여 날짜의 반복 규칙을 정의합니다. 예를 들어, 매주 월요일을 추출하고 싶다면 다음과 같이 작성할 수 있습니다:
rule = rrule(WEEKLY, byweekday=MO)
rule
객체를 사용하여 특정 기간 내의 날짜를 추출합니다. 예를 들어, 2022년 1월부터 2022년 12월까지의 날짜 중에서 매주 월요일을 추출하고 싶다면 다음과 같이 작성할 수 있습니다:
dates = list(rule.between(start_date, end_date))
이때, start_date
와 end_date
는 datetime.date
객체로서 추출할 날짜의 범위를 지정합니다.
3. 완성된 코드 예시
from dateutil.rrule import *
start_date = date(2022, 1, 1)
end_date = date(2022, 12, 31)
rule = rrule(WEEKLY, byweekday=MO)
dates = list(rule.between(start_date, end_date))
print(f"2022년 매주 월요일: {len(dates)}개")
print(dates)
위 예시 코드는 2022년에서 매주 월요일을 추출하여 결과를 출력하는 코드입니다. dates
변수에는 추출된 날짜들이 리스트 형태로 저장되어 있습니다. 추출된 날짜의 개수와 실제 날짜들을 출력하게 됩니다.