오경석의 개발노트

Python_코드 실행시간(소요시간) 측정 본문

프로그래밍 언어/Python

Python_코드 실행시간(소요시간) 측정

OHSAYU 2022. 10. 10. 12:08

1. 시, 분, 초 단위로 나타내는 측정법

import time
import datetime

start = time.time() # 코드실행 전 현재 시각

def sum_num(n): # 코드 실행구간
    result = 0
    for i in range(n+1):
        result += i
    return result

print('실행 결과 :', sum_num(2000000000))

end = time.time() # 코드실행 후 현재 시각

result_list = str(datetime.timedelta(seconds = end - start)).split(".") # 소요시간 측정
print('소요시간 :', result_list[0])
>>>
실행 결과 : 2000000001000000000
소요시간 : 0:01:35

 

2. 초 단위로 나타내는 측정법

import time

start = time.time() # 코드실행 전 현재시각

def sum_num(n): # 코드 실행구간
    result = 0
    for i in range(n+1):
        result += i
    return result

print('실행 결과 :', sum_num(2000000000))

end = time.time() # 코드실행 후 현재시각

print("소요시간 : {}초".format(round(end - start,2))) # 소요시간 측정
>>>
실행 결과 : 2000000001000000000
소요시간 : 92.52초

 

3. 여러 번 반복 실행해서 보다 정확한 코드 실행시간 평균을 측정하는 방법(시, 분, 초 단위)

import timeit

def sum_num(n): # 코드 실행구간
    result = 0
    for i in range(n+1):
        result += i
    return result

%timeit sum_num(2000000000) # 소요시간 측정
>>>
1min 32s ± 885 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

 

※ 함수를 사용하여 여러 코드 실행시간을 측정하는 방법(1, 2번)

import time
import datetime

def compute_time(start, end): # 코드 실행시간 측정하는 함수
    result_list = str(datetime.timedelta(seconds = end - start)).split(".")
    return print("소요시간 :", result_list[0])
    
def sum_num(n): # 코드 실행함수
    result = 0
    for i in range(n+1):
        result += i
    return result 

start = time.time()
print('실행 결과 :', sum_num(2000000000)) # 코드 실행구간 1
end1 = time.time()
print(compute_time(start, end1)) # 첫번째 코드 소요시간

print('실행 결과 :', sum_num(1000000000)) # 코드 실행구간 2
end2 = time.time()
print(compute_time(end1, end2)) # 두번째 코드 소요시간

print('실행 결과 :', sum_num(500000000)) # 코드 실행구간 3
end3 = time.time()
print(compute_time(end2, end3)) # 세번째 코드 소요시간
>>>
실행 결과 : 2000000001000000000
소요시간 : 0:01:33
None
실행 결과 : 500000000500000000
소요시간 : 0:00:47
None
실행 결과 : 125000000250000000
소요시간 : 0:00:24
None
import time

def sum_num(n): # 코드 실행함수
    result = 0
    for i in range(n+1):
        result += i
    return result 

start = time.time()
print('실행 결과 :', sum_num(2000000000))
end = time.time()
print("소요시간 : {}초".format(round(end - start,2)))

print('실행 결과 :', sum_num(1000000000))
end2 = time.time()
print("소요시간 : {}초".format(round(end2 - end,2)))

print('실행 결과 :', sum_num(500000000))
end3 = time.time()
print("소요시간 : {}초".format(round(end3 - end2,2)))
>>>
실행 결과 : 2000000001000000000
소요시간 : 92.52초
실행 결과 : 500000000500000000
소요시간 : 45.62초
실행 결과 : 125000000250000000
소요시간 : 23.02초

 

 

출처 : https://oniss.tistory.com/51

 

[Python] 코드 실행 시간 측정

코드를 짜고 프로그램을 실행할 때, 전체나 일부 코드의 실행 시간을 알아야 할 때가 있다. 이럴 때, time과 datetime 라이브러리를 사용하여 쉽게 시간을 측정하고 출력할 수 있다. 원리는 간단하다

oniss.tistory.com

출처 : https://jimmy-ai.tistory.com/243

 

파이썬 소요 시간 측정 방법 : time.time() 활용과 %timeit

파이썬에서 실행 시간을 재는 방법 파이썬에서 코드의 실행 시간을 측정하는 대표적인 두 가지 방법으로 time.time()과 timeit 모듈의 %timeit을 사용하는 경우에 대해서 각각 살펴보겠습니다. time.time(

jimmy-ai.tistory.com

 

Comments