본문 바로가기

app/python

python timeit 함수 수행 시간 알아내기



python의 timeit으로 콘솔에서는 쉽게 함수 수행시간을 알수 있지만 콘솔이 아닌 ide 환경이나 파일로 timeit 을 import로 해야 합니다 .


수행하려는 함수가 다음과 같습니다. 


sorting.py 


def insertion():
list = [33, 11, 99, 1, 22, 88, 55, 44, 66, 77]
for i in range(len(list)):
if i+1 < len(list):
pin = i+1
for j in reversed(range(0, pin)):
if list[j] > list[pin]:
list[pin], list[j] = list[j], list[pin]
pin = j
else:
break
return list


다른 파일에서 다음과 같습니다. 

import timeit
print(timeit.timeit("insertion()",
setup="from sorting import insertion", number=100))


timeit() 함수 안에 


첫번째 인자는 해당 함수이름 

두번째 인자는 setup으로 해당 py파일을 지정

세번째 인자는 number로 디폴트로 10000입니다.  (number는 해당 숫자만큼 실행한후 평균값 리턴합니다. 위에선 100번 수행후 리턴)



이제 테스트 시간 측정은 timeit 으로 하시면 됩니다. 




자세한 사항은  : https://docs.python.org/2/library/timeit.html

참 쉽죠?!