살구월드

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

 

timedelta를 사용하는 이유


안녕하세요 오늘은 datetime 모듈에 포함되어 있는 timedelta 사용법에 대해 알아보도록 하겠습니다.
이 함수는 정해진 날짜와 날짜 사이 혹은 시간간의 차이를 계산해 주는 클래스입니다.
우리가 프로그래밍을 하다보면 항상 현재 시간으로부터 떨어진 시간을 계산한다던지?
아니면 미래의 시간으로부터 현재 시간이 얼마나 차이가 있는지 등등 다양한 필요 사항이 생기게 됩니다.

바로 timedelta는 이러한 상황에서 손쉽게 처리할 수 있도록 도와줍니다.
예를 들어, 날짜와 시간 간의 연산, 특정 날짜와의 차이 계산, 시간 간격 측정 등을 수행할 수 있습니다.


날짜 계산은 복잡하지 않다.

 

 

날짜와 시간의 덧셈과 뺄셈 예제


특정 날짜와 시간을 더하거나 빼는 예제를 한번 알아보도록 하겠습니다.
우선 timedelta 객체를 만들고 내가 계산할 날짜를 지정한 후 시간을 덧셈 혹은 뺄셈을 수행하면 됩니다.
예를 들어, 현재 날짜에 10일을 더하는 예제 코드는 다음과 같습니다.

from datetime import datetime, timedelta

now_date = datetime.now()
after_date = now_date + timedelta(days=10)

print("지금 현재의 날짜:", now_date)
print("10일 후의 날짜:", after_date)



현재날짜로부터 미래의 날짜를 계산

 

 

위의 예제에서는 timedelta 객체를 사용하여 현재 날짜에 10일을 더해 after_date에 저장합니다.
간단하게 days라는 항목을 통해 10일의 시간을 더할 수 있었습니다.


 

특정 날짜와의 차이 계산하기 예제


timedelta를 사용하여 특정 날짜와의 차이를 계산할 수 있습니다.
예를 들어, 오늘과 내년의 특정 날짜 사이의 남은 일수를 계산하는 예제 코드는 다음과 같습니다.

from datetime import datetime, timedelta

now_date = datetime.now()
special_date= datetime(now_date.year, 5, 22)  # 특정 날짜를 5월 22일로 가정
if now_date > special_date: special_date = special_date.replace(year=now_date.year + 1)
left_day = (special_date - now_date).days

print("앞으로 남은 날:", left_day)

 

미래의 특정 시점 날짜가 현재로부터 얼마나 남았는지 알 수 있다.

 

 




위의 예제에서는 timedelta 객체를 사용하여 오늘 날짜와 생일 사이의 차이를 계산하고, 남은 일수를 출력합니다.


 

시간 간격 계산하기 예제


timedelta를 사용하여 시간 간격도 계산할 수 있습니다.
예를 들어, 어떠한 프로그램이 첫 코드를 실행한 시점부터 마지막 코드를 실행한 시점까지 걸린 시간을 계산하는 예제를 확인해 보겠습니다.

from datetime import datetime, timedelta

s_t = datetime.now()

for i in range(0,10000):
    a = 1
    b = a + 1

e_t = datetime.now()
t = e_t - s_t

print("소요 시간:", t)



for문 10000번 반복하는 행위는 0.000444초가 걸린다.. 빠르다

 

 

위의 예제에서는 작업을 수행하는 동안 timedelta를 사용하여 시작 시간과 종료 시간의 차이를 계산하고, 소요 시간을 출력합니다.

오늘은 timedeta를 사용하여 각 시간 간격 변환 방법에 대해 알아보았습니다.
더 다른 방법에 대해 다음 포스팅에서 다루도록 하겠습니다.

 

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

공유하기

facebook twitter kakaoTalk kakaostory naver band