python

python timedelta에서 제공하는 시간 외 시간 구하기

wangkisa 2019. 7. 8. 18:14

파이썬에서 시간을 더하거나 빼기를 할때

제공해주는 timedelta 라는 모듈이 있습니다.

 

하지만 이 timedelta 라는 모듈이 제공해주는 시간 단위는 

seconds, hours, days, weeks 가 있습니다.

 

하지만 월이 없어서 days로 어거지로 할수는 있겠지만 월마다 day가 다르므로, 

정확한 day 구하기가 쉽지가 않습니다.

 

구글링 하며 찾은 답은 relativedelta를 이용한 것입니다.

 

from dateutil.relativedelta import relativedelta

 

date = datetime.now() + relativedelta(months=1)

 

이런식으로 하면 현재로부터 한달 뒤를 구할 수 있습니다.

 

date = datetime.now() - relativedelta(months=1)

 

이렇게 하면 현재로부터 한달 전을 구할 수 있습니다.

 

months 대신에 years를 이용하면 년도 단위로 더하기, 빼기 연산도 가능합니다.