デコレーターと「複合ステートメント」に関する公式の Python ドキュメントのこのページでは、次のコードのサンプルが提供されています。
【サンプル冒頭】
@f1(arg)
@f2
def func(): pass
次と同等です。
def func(): pass
func = f1(arg)(f2(func))
【サンプル終了】
しかし、「func = f1(arg)(f2(func))」がわかりません。私はこれまでにこのような電話を見たことがなく、それが何を意味するのかわかりません。異なる引数を使用した複数の呼び出しであり、括弧の各ペアには 1 つの引数 (最初の 'arg'、2 番目の 'f2(func)') が含まれていますか、それとも何か他のものですか? デコレータを勉強するには、これを理解する必要があります。また、これは Python 2.7 で動作しますか? 私が参考にしたデコレーターのサイトの 1 つは、Python 3.2 に関するものでした。