DRF 데코레이터 function

Grace Goh·2022년 10월 25일
0

Django Rest Framework

목록 보기
3/36

함수를 꾸며주는 함수

(인자)로 함수를 받고
받은 함수값의 위아래에 새로운 명령을 더해
꾸며진 함수를 리턴한다.

다음 2가지는 모두 같은 결과를 리턴한다.

# deco1.py

def wrapper(function):
    def decorated_func():
        print("베이직 전에 실행")
        function()
        print("베이직 후에 실행")
    return decorated_func

def basic():
    print("---나는 베이직 펑션---")

# basic()

new_func = wrapper(basic)
new_func() # 호출: basic을 wrapper로 감싼 함수

베이직 전에 실행
---나는 베이직 펑션---
베이직 후에 실행


# deco2.py

def wrapper(function): # basic
    def decorated_func():
        print("베이직 전에 실행")
        function() # basic
        print("베이직 후에 실행")
    return decorated_func

@wrapper # wrapper(basic) 처리
def basic():
    print("--나는 베이직 펑션--")

basic() # wrapper(basic) 호출

베이직 전에 실행
--나는 베이직 펑션--
베이직 후에 실행


profile
Español, Inglés, Coreano y Python

0개의 댓글