Pythonデコレータのラッパーは、装飾された関数の引数にどのように到達しますか? 例えば:
def decorate(f):
def wrapped_function(*args):
print args
f()
return wrapped_function
@decorate
def my_function(*args):
print("Hello world")
my_function("a")
# output
('a',)
Hello world
したがって、wrapd_function がクロージャーであることはわかっています。これは、my_function へのアクセスを上位スコープからの変数として保持しているためです。しかし、どのようにして理論上の議論をもたらすことができるでしょうか?