Dies ist eine alte Version des Dokuments!
def decofactory(decorator_param): def decoratorfunction(func): def wrapper(*args, **kwargs): func(*args, **kwargs) return wrapper return decoratorfunction @decoratorfactory(someparameter) def actual_function(param1, param2): pass
def decofactory(decorator_param=1): def decoratorfunction(func): def wrapper(*args, **kwargs): func(*args, **kwargs) return wrapper return decoratorfunction @decoratorfactory def actual_function(param1, param2): pass
Statt:
@decoratorfactory def actual_function(param1, param2): pass
@decoratorfactory() def actual_function(param1, param2): pass
def decofactory(decorator_param=1): def decoratorfunction(func): def wrapper(*args, **kwargs): func(*args, **kwargs) return wrapper if callable(decorator_param): return decoratorfunction(decorator_param) return decoratorfunction