2021년/개발공부
Python decorator
위지원
2021. 4. 12. 15:08
Python decorator
decorator를 쓰면 wrapper를 이용해 손쉽게 코드 수정이 가능해짐 완벽한 형태는 아래와 같음.
마치 스프링의 AOP가 생각난다..
def decorator(func):
@wraps(func)#원본 함수의 메타정보가 데코레이터의 메타정보로 대체되는 것을 방지하기 위
def wrapper(*args, **kwargs):
print("start")
value = func(*args, **kwargs)#원본 함수 파라미터를 그대로 받기 위해
print("end")
return value #원본 함수 return을 받기 위해
return wrapper
@decorator
def test_func(msg):
print("test_func %s" % msg)
return "YES~!"
res = test_func("one two three!")
print(res)
www.daleseo.com/python-decorators/
[파이썬] 데코레이터 기본 사용법
Engineering Blog by Dale Seo
www.daleseo.com