Un décorateur en Python est une fonction qui prend une autre fonction en argument, ajoutant une certaine fonctionnalité, puis la renvoie. Autrement dit, les décorateurs permettent d’ajouter ou de modifier le comportement des fonctions ou des classes existantes sans changer leur source code.
Ici, vous pouvez trouver les étapes de base pour utiliser des décorateurs en Python:
1. Définir une fonction décorateur. C’est une fonction qui prend une autre fonction en argument. Par exemple:
```
def simple_decorateur(fonction):
def nouvelle_fonction():
print(“Fonctionnalité ajoutée avant l’exécution de la fonction originale.”)
fonction()
print(“Fonctionnalité ajoutée après l’exécution de la fonction originale.”)
return nouvelle_fonction
```
1. Définir la fonction que vous souhaitez décorer. Par exemple:
```
def fonction_originale():
print(“Je suis la fonction originale.”)
```
1. Appliquer le décorateur à la fonction en utilisant le symbole @ suivi par le nom de la fonction décorateur, placé juste avant la définition de la fonction que vous souhaitez décorer. Par exemple:
```
@simple_decorateur
def fonction_originale_decorée():
print(“Je suis la fonction originale décorée.”)
```
1. Dans l’exemple ci-dessus, `fonction_originale_decorée()` sera exécutée comme `simple_decorateur(fonction_originale_decorée)`.
1. Exécutez le code et observez les résultats.
Remarque: Les décorateurs peuvent être un peu déroutants au début, surtout si vous n’êtes pas familier avec les concepts de “première classe” ou de “fonctions d’ordre supérieur” dans les langages de programmation. Mais une fois que vous les comprendrez, ils peuvent être un outil très puissant dans votre arsenal de programmation Python.