Search

Python 04. Python Function - Decorator

Created at
2018/07/11
Updated at
2021/01/21
Tags
Keywords
3 more properties
목차

1. Decorator

코드를 바꾸지 않고 함수의 기능을 추가하거나 수정하고 싶을때 사용
여러개의 함수를 작성하는데 공통된 코드를 뽑아서 묶어 사용할 수 있음
args*kwargs를 이용하여 내부함수와 내부 인자로 사용
예를 들어, 아래 A와 B함수에서 공통된 부분인 code_1과 code_3을 빼서 묶어 사용하고 싶을 때 사용
def A(): code_1 code_2 code_3 def B(): code_1 code_4 code_3
Python
복사

2. Decorator 사용 방법

def C(func): def wrapper(*args, **kwargs) # inner function code_1 result = func(*args, **kwargs) code_3 return result return wrapper @C def A(): code_2 @C def B(): code_4
Python
복사
결과: A() - code1, code2, code3 B() - code1, code4, code3 decorator를 쓰지 않으면 아래 처럼 써야함 C(A)()

3. Decorator 함수 만들어보기

3.1 더하기와 빼기 연산을 display하기

3.2 함수의 실행 시간을 측정하는 데코레이터 함수

3.3 관리자 계정을 확인해서 관리자 계정이면 패스워드를 출력하는 함수

참고자료
패스트캠퍼스, ⟪데이터사이언스스쿨 8기⟫ 수업자료
인프런, ⟪프로그래밍, 데이터 과학을 위한 파이썬 입문⟫ 수업 자료