TIL 21.05.16 데코레이터

0

TIL

목록 보기
9/29
post-thumbnail

데코레이터 개념에 대해서 정리

사용 이유

어떤 함수를 사용하기 전에 먼저 실행을 할 함수가 있다 + 다른 함수에도 반복적으로 적용해야 할 때 사용

적용 방법

위 이미지를 보면 welcome_decorator 데코레이터는 함수에 welcome to WECODE!라는 텍스트를 추가하여 인쇄하는 기능을 더한다. 이 데코레이터를 각각 greeting(), show _gratitude()라는 함수에 적용을 해보면 그 결과는

Hello , + welcome to WECODE!
I will give my_gratitude + welcome to WECODE!

이렇게 자신의 함수에 데코레이터가 적용되어 나타난다.

데코레이터를 적용하기 위해서는 총 2단계의 작업이 필요하다.

데코레이터 만들기

데코레이터 함수를 우선 정의해줘야 한다. 방법은 wapper를 사용해서 func에 적용할 사항들을 추가

func는 데코레이터가 적용될 함수

def  decorator_name (func) :
	def wrapper():
    	return func() 데코레이터로 적용할 사항
    return wrapper 
    

함수에 적용

적용할 함수가 정의된 윗부분에 @데코레이터 이름으로 정의해주면 데코레이터가 정의된다.

@decorator_name 
def  function(func) :
	return     

함수에 재귀 개념이 들어가 있어서 이해하기 어려웠지만 활용성이 매우 높을 것 같은 개념이라 정리했다.

profile
기록을 통해 한 걸음씩 성장ing!

0개의 댓글