J'ai plusieurs décorateurs sur chaque fonction, y a-t-il un moyen de les emballer à une autre? Modifier à: P> @all_funs #runs fun1 fun2 and fun3, how should all_funs look like?
def do_stuf():
pass
3 Réponses :
def all_funs(f): return fun1(fun2(fun3(f)))
Un décorateur n'est en principe que le sucre syntaxique pour cela:
def all_funs(funky): return fun1(fun2(fun3(fun4(funky)))
Il est également possible d'écrire un décorateur générique qui prend en charge le chaînage de décorateur:
Dupliquer: