Pythonデコレータ

デコレータは、関数の動作を変更、拡張、または変更する方法です。

デコレータは、@関数定義の直前にあるシンボルとそれに続くデコレータ名。

例:

@logtime
def hello():
    print('hello!')

このhello関数にはlogtimeデコレータが割り当てられました。

私たちが呼ぶときはいつでもhello()、デコレータが呼び出されます。

デコレータは、関数をパラメータとして受け取り、その関数を、実行する必要のあるジョブを実行する内部関数でラップし、その内部関数を返す関数です。言い換えると:

def logtime(func):
    def wrapper():
        # do something before
        val = func()
        # do something after
        return val
    return wrapper

その他のPythonチュートリアル: