Python
파이썬 데코레이터를 이용한 실행 시간 측정
john.k
2020. 9. 17. 14:06
반응형
함수의 실행에 어느정도 시간이 걸리는지 확인해야 될 때가 있습니다.
하지만 여러 군데에서 일일이 시작시간과 종료시간을 구하고 그 차를 출력하는 것은 번거롭습니다.
파이썬 데코레이터를 이용하여 시간을 측정하는 예제를 작성해봤습니다.
# decorator.py
from datetime import datetime
def time_measure_decorator(func):
def wrapper(*args, **kwargs):
start = datetime.now()
ret = func(*args, **kwargs)
end = datetime.now()
print("Time lapsed : ", (end-start).total_seconds(), "seconds")
return ret
return wrapper
위와 같이 데코레이터를 작성할 수 있습니다.
# example.py
from decorator import time_measure_decorator
@time_measure_decorator
def example(num):
for _ in range(num):
pass
return "success"
a = example(10**9)
print(a)
실행 시 다음과 같은 결과를 확인할 수 있습니다.
Time lapsed : 19.017032 seconds
success
반응형