728x90 반응형 decorator3 [Python] Class로 수행시간 측정 decorator 만들기 decorator가 유용하게 사용되는 경우 중 하나가 특정 function 등의 수행시간 측정이다. function으로 decorator를 만드는 경우에 대한 정리는 이전에 했기 때문에 여기선 class로 작성한다. 2023.08.18 - [Python] - [Python] Decorator 해당 decorator는 arguments를 통해 어떤 단위로 측정할지와 cpu시간만을 측정할지 등을 선택할 수 있게 구성함. code는 다음과 같음. import time class DsElapsedTime: def __init__(self, is_sec=True, only_cpu=False): # decorator가 동작 방식을 정의하는 변수 초기화. self.is_sec = is_sec self.only_cpu.. 2023. 8. 18. [Python] Decorator Python이 제공하는 Decorator는 기존의 function을 수정하지 않으면서 특정 처리를 추가할 수 있게 해주는 도구라고 할 수 있다. Decorate의 "꾸미다"라는 의미에 맞게 기존 function을 꾸며주는 기능을 제공한다. Decorator를 사용하면 코드 중복을 효과적으로 줄여 보다 간결한 형태의 코딩이 가능함. 특히 Python에서는 @를 통한 decorator 사용문법을 통해 매우 간결한 코딩이 가능함. 특정 공통된 처리의 모듈화가 아주 효과적으로 가능하게 해줌. 단점은 wrapper의 사용으로 debuging이 좀 까다로워짐(에러 위치를 찾는게 좀 더 까다로워짐.) Closuer처럼 지나치게 많이 사용시 가독성이 떨어짐. 참고로 이 문서에서는 function으로 decorator를.. 2023. 8. 18. [Python] Closure Closure의 정의는 다음과 같음. Nested function 으로, 자신의 enclosing scope (= Python에서 non-local scope)의 상태값(lexcical environment의 variable 값)을기억하고 유지, 변경, 사용할 수 있는 high-order function를 가르킴.2023.07.15 - [Python] - [Python] Nested Function2023.07.15 - [Python] - [Python] scope와 키워드 global, nonlocal2024.11.20 - [Python] - [Py] High-order Function (고차함수) [Py] High-order Function (고차함수)정의High-order function(고차 함수.. 2023. 7. 15. 이전 1 다음 728x90 반응형