:: python

python :: 파이썬 코드 실행 시간(elapsed time) 측정하기

토람이 2021. 11. 14. 20:01

파이썬 스크립트 내 특정 코드 실행 시간을 측정할 때
datetime 라이브러리를 사용하면 된다.

 

from datetime import datetime

start_time = datetime.now()
#
# 실행시간 측정을 원하는 코드 입력
#
end_time = datetime.now()

elapsed_time = end_time - start_time


이렇게 작성하고 실행시키면,

 

0:00:37.615328


이런 형태의 결과가 출력된다.
타입이 무엇인고 하니,
<class 'datetime.timedelta'> 라고 한다.
이는 int 타입과 연산이 불가능하다.

 

total_elapsed_time = 0
total_elapsed_time += elapsed_time

# TypeError: unsupported operand type(s) for +=: 'int' and 'datetime.timedelta'



이렇게 int 타입의 total_elapsed_time 에 더하려고 하니 TypeError 가 발생했다.

연산을 위해서는 elapsed_time 을 초단위로 변환시켜주면 된다.

 

total_elapsed_time += elapsed_time.total_seconds()

# 37.615328


위와 같이 total_seconds() 를 붙여주면 초 단위로 변환하여 정상적으로 연산이 된다.

300x250