[python] dateutil의 rrule 모듈을 사용하여 특정 요일이 포함된 날짜 리스트 생성

dateutil은 파이썬에서 날짜 및 시간 관련 작업을 수행하기 위한 유용한 라이브러리입니다. 이 라이브러리의 rrule 모듈을 사용하면 특정 요일이 포함된 날짜 리스트를 쉽게 생성할 수 있습니다.

rrule 모듈의 사용

rrule 모듈은 반복 규칙을 정의하고 이를 기반으로 날짜 리스트를 생성하는 데 사용됩니다. 특히, 다음과 같은 파라미터를 사용하여 규칙을 생성할 수 있습니다.

예제 코드

다음은 rrule 모듈을 사용하여 특정 요일이 포함된 날짜 리스트를 생성하는 예제입니다.

from dateutil import rrule
from datetime import datetime, timedelta

startdate = datetime(2022, 1, 1)
enddate = datetime(2022, 12, 31)

rule = rrule.rrule(rrule.WEEKLY, byweekday=rrule.SA, dtstart=startdate)

dates = []
for dt in rule.between(startdate, enddate):
    dates.append(dt.date())

print(dates)

위의 예제 코드에서는 매주 토요일(byweekday=rrule.SA)을 포함하는 날짜 리스트를 생성합니다. 시작 날짜와 종료 날짜 사이의 모든 토요일 날짜를 가져와서 dates 리스트에 추가하고 출력합니다.

결과

위의 코드를 실행하면 2022년의 모든 토요일 날짜가 출력됩니다.

[datetime.date(2022, 1, 1), datetime.date(2022, 1, 8), datetime.date(2022, 1, 15), ...]

이를 통해 dateutil의 rrule 모듈을 사용하여 특정 요일이 포함된 날짜 리스트를 손쉽게 생성할 수 있습니다.

참고 자료