Skip to content

Instantly share code, notes, and snippets.

@6mini
Created February 6, 2024 07:26
Show Gist options
  • Save 6mini/00f3e0ec36e30525074c04feed798cef to your computer and use it in GitHub Desktop.
Save 6mini/00f3e0ec36e30525074c04feed798cef to your computer and use it in GitHub Desktop.
파이썬(Python) 함수의 실행 시간을 측정하는 데코레이터이다. 실행 시간은 시간(h), 분(m), 초(s) 단위로 출력하여, 함수의 성능 분석이나 최적화를 돕는다. 단순히 측정하고자 하는 함수에 @measure_runtime 데코레이터를 추가하기만 하면 해당 함수의 실행 시간을 확인할 수 있다.
import time
def measure_runtime(func):
"""
함수의 실행 시간을 측정하여 시간, 분, 초 단위로 표시하는 데코레이터 함수입니다.
인자:
func (function): 실행 시간을 측정할 함수입니다.
반환값:
function: 래핑된 함수입니다.
"""
def wrapper(*args, **kwargs):
start_time = time.time() # 시작 시간 기록
result = func(*args, **kwargs) # 함수 실행
end_time = time.time() # 종료 시간 기록
runtime = end_time - start_time # 실행 시간 계산
# 실행 시간을 시, 분, 초 단위로 변환
hours, rem = divmod(runtime, 3600)
minutes, seconds = divmod(rem, 60)
# 실행 시간 출력
print(f"함수 '{func.__name__}'의 실행 시간: {int(hours)}시간 {int(minutes)}분 {seconds:.4f}초")
return result
return wrapper
# 사용 예시
@measure_runtime
def example_function():
# 측정하고 싶은 코드를 여기에 작성합니다.
time.sleep(3662) # 예시: 3662초(1시간 1분 2초) 동안 대기
example_function()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment