以下のようなデコレータがあります。
def myDecorator(test_func):
return callSomeWrapper(test_func)
def callSomeWrapper(test_func):
return test_func
@myDecorator
def someFunc():
print 'hello'
このデコレーターを拡張して、以下のような別の引数を受け入れたい
def myDecorator(test_func,logIt):
if logIt:
print "Calling Function: " + test_func.__name__
return callSomeWrapper(test_func)
@myDecorator(False)
def someFunc():
print 'Hello'
しかし、このコードはエラーを出し、
TypeError: myDecorator() は正確に 2 つの引数を取ります (1 つ指定)
関数が自動的に渡されないのはなぜですか? 関数をデコレータ関数に明示的に渡すにはどうすればよいですか?