imはラッキー関数内でデコレータ引数にアクセスしようとしています。デコレータラッパー関数内のデコレータ引数にアクセスする
def my_decorator(arg1=False, arg2=None):
def decorator(method):
@functools.wraps(method)
def wrapper(method, *args, **kwargs):
# do something based on arg1 and arg2
# accessing one of the two named arguments
# ends up in a 'referenced before assignment'
arg1 = arg1 # error
arg2 = arg2 # error
newarg1 = arg1 # working
newarg2 = arg2 # working
return method(*args, **kwargs)
return wrapper
return decorator
と私はデコレータの引数にアクセスすることはできませんなぜ私は本当に理解していない通常のデコレータ
@my_decorator(arg1=True, arg2='a sting or whatever else')
the_function()
のようにそれを使用します。
私は何を持っていることです。
はそれを指摘していただきありがとうございます。 – aschmid00