[python] dateutil의 timedelta 기능 활용
파이썬에서 날짜와 시간을 다루는 데에는 여러 가지 모듈과 함수가 존재합니다. 그 중에서도 dateutil
모듈은 유용한 기능을 제공하기 때문에 많은 사람들이 사용하고 있습니다. 이번에는 dateutil
모듈의 timedelta
기능에 대해 알아보도록 하겠습니다.
timedelta란?
timedelta
는 두 개의 날짜 또는 시간 간의 차이를 나타내는 데 사용되는 클래스입니다. 즉, 두 개의 날짜 또는 시간을 빼서 얻은 결과를 timedelta
객체로 나타낼 수 있습니다. timedelta
객체는 주로 날짜와 시간 간의 연산을 수행할 때 유용하게 사용됩니다.
timedelta 사용 예제
아래는 timedelta
를 사용한 예제 코드입니다.
import datetime
from dateutil.relativedelta import relativedelta
# 현재 시간
now = datetime.datetime.now()
# 5일 후의 날짜
after_5_days = now + relativedelta(days=5)
# 3주 전의 날짜
before_3_weeks = now - relativedelta(weeks=3)
# 2개의 날짜 간의 차이 계산
diff = after_5_days - before_3_weeks
print("현재 시간:", now)
print("5일 후:", after_5_days)
print("3주 전:", before_3_weeks)
print("날짜 차이:", diff)
위 코드에서는 먼저 datetime
모듈에서 now()
함수를 사용하여 현재 시간을 가져옵니다. 그리고 dateutil.relativedelta
모듈에서 relativedelta
객체를 import 한 후, days
혹은 weeks
와 같은 인자를 사용하여 원하는 날짜나 시간의 차이를 지정할 수 있습니다.
예제에서는 now
변수에 현재 시간을 저장하고, relativedelta
함수를 사용하여 5일 후의 날짜와 3주 전의 날짜를 계산합니다. 또한 after_5_days
와 before_3_weeks
간의 차이를 diff
변수에 저장하고 결과를 출력합니다.
결과 예제
위 예제를 실행하면 다음과 같은 결과를 얻을 수 있습니다.
현재 시간: 2022-01-01 12:00:00
5일 후: 2022-01-06 12:00:00
3주 전: 2021-12-11 12:00:00
날짜 차이: 26 days, 0:00:00
결과에서는 현재 시간, 5일 후의 날짜, 3주 전의 날짜, 그리고 두 날짜의 차이를 확인할 수 있습니다.