63 votes

Puis-je combiner deux décorateurs en un seul en Python ?

Existe-t-il un moyen de combiner deux décorateurs en un seul nouveau décorateur en python?

Je me rends compte que je peux simplement appliquer plusieurs décorateurs à une fonction, mais j’étais curieux de savoir s’il existe un moyen simple d’en combiner deux en une nouvelle.

71voto

Jochen Ritzel Points 42916

Un peu plus général :

Alors

est équivalent à

34voto

Thanatos Points 13444

Oui. Voir la définition d’un décorateur, ici.

Quelque chose comme ça devrait fonctionner:

6voto

Si vous ne voulez pas trop vous répéter dans une suite de tests, vous pouvez faire comme ceci:

maintenant vous pouvez l’utiliser dans votre suite de tests au lieu d’une quantité folle de décorateurs au-dessus de chaque fonction:

5voto

Sven Marnach Points 133943

Si les décorateurs ne prennent pas d’arguments supplémentaires, vous pouvez utiliser

Maintenant

sera équivalent à

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X