Python/Python

    Decorator

    데코레이터 클래스에서 메서드를 만들 때 @staticmethod, @classmethod, @abstractmethod처럼 @로 시작하는 것들이 데코레이터 데코레이터는 함수를 수정하지 않은 상태에서 추가 기능을 구현할 때 사용한다. 예를 들어 함수의 시작과 끝을 출력하고 싶은 경우 아래와 같이 작성할 수 있다. def trace(func): # 호출할 함수를 매개변수로 받음 def wrapper(): # 호출할 함수를 감싸는 함수 print(func.__name__, '함수 시작') # __name__으로 함수 이름 출력 func() # 매개변수로 받은 함수를 호출 print(func.__name__, '함수 끝') return wrapper # wrapper 함수 반환 def hello(): print..