Maison >développement back-end >Tutoriel Python >Comment fonctionnent les décorateurs fonctionnels et comment peuvent-ils être enchaînés ?
Les décorateurs sont des fonctions qui modifient d'autres fonctions. Ils fournissent un moyen d'améliorer ou d'étendre le comportement d'une fonction sans la modifier directement.
Syntaxe :
@decorator_function def function_to_decorate(): # Function body
Décorateurs peut être chaîné, ce qui signifie que vous pouvez appliquer plusieurs décorateurs à la même fonction. L'ordre dans lequel vous enchaînez les décorateurs est important.
@decorator2 @decorator1 def function_to_decorate(): # Function body
Dans cet exemple, decorator1 sera appliqué en premier, suivi de decorator2.
Pour obtenir l'objectif souhaité sortie, vous pouvez créer des décorateurs personnalisés :
# Decorator for bolding text def makebold(fn): def wrapper(): return "<b>" + fn() + "</b>" return wrapper # Decorator for italicizing text def makeitalic(fn): def wrapper(): return "<i>" + fn() + "</i>" return wrapper @makebold @makeitalic def say(): return "Hello" print(say()) # Output: "<b><i>Hello</i></b>"
Dans cet exemple, le décorateur @makebold est appliqué en premier, suivi de @makeitalic. Le résultat est "Bonjour" entouré de balises grasses et italiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!