공부하는 블로그

[python] 날짜 차이 계산 (개월 수 계산) 본문

Python

[python] 날짜 차이 계산 (개월 수 계산)

young_o-o 2023. 6. 22. 22:26
728x90

안녕하세요 이번에 소개해드릴 내용은 python에서 두 날짜를 계산하는 코드에 대해서 소개해드리고자 합니다.

특히 일수, 년수, 시간 등 계산하는 방법은 함수가 제공되는 것 같지만 개월 수를 계산하는 것은 제공되지 않는 것 같습니다.

그래서 간단한 함수 구현으로 개월 수 차이를 계산할 수 있는 방법을 소개해드리고자 합니다.

from glob import glob
from datetime import date, datetime
from dateutil.relativedelta import relativedelta

# 개월 수 차이 구하는 함수
def diff_month(d1, d2):
    return (d1.year - d2.year) * 12 + d1.month - d2.month

if __name__=="__main__":

    # 날짜 data 생성
    date_object = datetime.strptime("20210101", '%Y%m%d').date()
    date_object = date(2021, 1, 1)
    now = datetime.now().date() # 2023-03-15
    
    # 날짜의 차이 구하기
    # 일 수
    diff = now-date_object
    print(diff) # 803 days, 0:00:00
    print(diff.days) # 803
    
    # 월 수
    print(diff_month(now, date_object)) # 26

    # 년 수
    diff = now.year - date_object.year
    print(diff) # 2
    

    # 날짜 계산
    date_object = date(2021, 1, 1) # 2021-01-01

    add_day = date_object + relativedelta(days= 1) # 2021-01-02

    add_month = date_object + relativedelta(months= 1) # 2021-02-01

    add_year = date_object + relativedelta(years= 1) # 2022-01-01

간단하죠?

이렇게 일수, 월수, 년수의 차이를 계산할 수 있습니다.

감사합니다.

 

 

참고 링크

python - Best way to find the months between two dates - Stack Overflow

'Python' 카테고리의 다른 글

[Conda] 환경 이식 / 복제  (2) 2023.10.22
[python] 가장 최신 파일 정보  (0) 2023.06.26
[python] SMTP 모듈을 사용해 이메일 보내기  (0) 2023.06.21