파이썬 decorator
Code Snippets
2021. 4. 22. 11:36
데코레이터는 말로 표현하기 참 어려운 패턴인데, 어쨌든 공통되는 코드를 '템플릿화' 하고 중복으로 작성하지 않기 위하여 사용한다고 보면 된다. 함수의 실행시간을 나타내기 위하여 데코레이터 함수를 적용해볼 수 있다. '코드를 바꾸지 않고 기능을 추가하거나 수정하고 싶을 때 사용하는 파이썬 문법'이라고 소개된 글도 봤지만, 파이썬에서는 비록 @를 이용해서 애트리뷰트로 데코레이터 패턴을 사용하기는 하지만 이건 파이썬 문법이 아니다. 프로그래밍 언어에 상관없이 적용 가능한 패턴일 뿐, 문법이 아니당. import time def timer(func): def wrapper(*args, **kwargs): start_time = time.time() result = func(*args, **kwargs) end_..