Как передать дополнительные аргументы декоратору Python?
У меня есть декоратор, как показано ниже.
<code>def myDecorator(test_func): return callSomeWrapper(test_func) def callSomeWrapper(test_func): return test_func @myDecorator def someFunc(): print 'hello' </code>
Я хочу улучшить этот декоратор, чтобы принять другой аргумент, как показано ниже
<code>def myDecorator(test_func,logIt): if logIt: print "Calling Function: " + test_func.__name__ return callSomeWrapper(test_func) @myDecorator(False) def someFunc(): print 'Hello' </code>
Но этот код дает ошибку,
TypeError: myDecorator() takes exactly 2 arguments (1 given)
Почему функция не передается автоматически? Как явно передать функцию функции декоратора?