끄적대기

Python Decorator

alpha-star 2022. 3. 24. 03:54
728x90
반응형

˙Python Decorator

 기존의 코드에 여러 가지 기능을 추가하는 Python 구문으로, 실행하려는 메인 구문에 대하여 부가적인 구문 또는 반복적인 구문을 추가하고 싶을 때 주로 사용한다. 함수의 호출을 받아 해당 프로세스를 추가한 뒤 다시 함수의 형태로 반환하는 함수이다. 일반적으로 함수의 전처리 또는 후처리에 대한 필요가 있을 때 사용하며, 메서드나 함수의 책임을 확장한다. 성능으로는 나아지는 부분은 없으나, 가독성이 좋아지고, 효율적으로 관리하기가 쉽다.

 

 

# ## Python Decorator 사용 전 ###
 
def main_function_01():
    print('Hello world!')
    print('Main Function 01 Process...')
    print('Goodbye World!')
 
 
def main_function_02():
    print('Hello world!')
    print('Main Function 02 Process...')
    print('Goodbye World!')
 
...
 
def main_function_10():
    print('Hello world!')
    print('Main Function 10 Process...')
    print('Goodbye World!')
 
# #############################
 
 
# ## Python Decorator 사용 후 ###
 
def main_decorator(function):
    def decorate():
        print('Hello world!')
        function()
        print('Goodbye World!')
    return decorate
 
@main_decorator
def main_function_01():
    print('Main Function 01 Process...')
 
@main_decorator
def main_function_02():
    print('Main Function 02 Process...')
 
...
 
@main_decorator
def main_function_10():
    print('Main Function 10 Process...')
 
# #############################
728x90
반응형