[python] dateutil의 rrule 모듈을 사용하여 주어진 규칙에 따라 날짜 및 시간 생성

Python의 dateutil 라이브러리는 날짜 및 시간 관련 작업을 수행하는데 도움을 주는 유용한 도구들을 제공합니다. 그 중에서도 rrule 모듈은 규칙에 따라 반복적으로 날짜 및 시간을 생성할 수 있습니다. 이번 포스트에서는 rrule 모듈을 사용하여 주어진 규칙에 따라 날짜 및 시간을 생성하는 방법에 대해 알아보겠습니다.

dateutil 설치하기

먼저 dateutil 모듈을 설치해야 합니다. pip를 사용하여 간단하게 설치할 수 있습니다:

$ pip install python-dateutil

rrule로 날짜 및 시간 생성하기

다음은 rrule 모듈을 사용하여 주어진 규칙에 따라 날짜 및 시간을 생성하는 예제 코드입니다. 이 예제에서는 매주 월요일과 목요일 오후 2시부터 시작하여 5번 반복하는 날짜 및 시간을 생성합니다.

import datetime
from dateutil.rrule import rrule, WEEKLY, TH, FR

start_time = datetime.datetime(2022, 1, 1, 14, 0)  # 시작 날짜 및 시간
end_time = datetime.datetime(2022, 2, 28, 14, 0)  # 종료 날짜 및 시간

rrule_obj = rrule(WEEKLY, dtstart=start_time, until=end_time, byweekday=(TH, FR), count=5)
result = list(rrule_obj)

for datetime_obj in result:
    print(datetime_obj)

위의 코드를 실행하면 다음과 같은 결과가 출력됩니다:

2022-01-06 14:00:00
2022-01-07 14:00:00
2022-01-13 14:00:00
2022-01-14 14:00:00
2022-01-20 14:00:00

코드를 살펴보면, rrule 함수를 사용하여 원하는 규칙을 정의하고, dtstart 매개변수를 통해 시작 날짜 및 시간을 지정합니다. until 매개변수를 통해 생성할 날짜 및 시간의 최대 범위를 지정할 수 있으며, byweekday 매개변수를 통해 원하는 요일을 선택할 수 있습니다. count 매개변수는 생성할 날짜 및 시간의 수를 제한하는 역할을 합니다.

이렇게하여 rrule 모듈을 사용하여 원하는 규칙에 따라 날짜 및 시간을 생성할 수 있습니다. 다양한 매개변수를 사용하여 원하는 날짜 및 시간의 조합을 만들어보세요. 자세한 내용은 dateutil의 공식 문서를 참조하세요.

참고 자료