Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 일련의 함수 데코레이터를 만드는 방법은 무엇입니까?


데코레이터는 "래퍼"이며, 이를 통해 함수 자체를 수정하지 않고 장식하는 함수 전후에 코드를 실행할 수 있습니다.

예시

주어진 코드는 다음과 같이 데코레이터 체인으로 래핑될 수 있습니다.

def makebold(fn):
    def wrapped():
        return "<b>" + fn() + "</b>"
    return wrapped
def makeitalic(fn):
    def wrapped():
        return "<i>" + fn() + "</i>"
    return wrapped
@makebold
@makeitalic
def hello():
    return "hello world"
print hello()

출력

C:/Users/TutorialsPoint1/~.py
<b><i>hello world</i></b>

이 html 코드를 아래 링크와 같이 실행하면 굵게 기울임꼴로 표시된 'hello world'로 출력됩니다.