Les Décorateurs

En Python, un décorateur est un patron de conception qui vous permet d’étendre la fonctionnalité d’une fonction sans modifier son code. Cela est réalisé en enveloppant la fonction dans une autre fonction, qui prend la fonction originale en argument et retourne une version modifiée de celle-ci.

Dans cet exemple, le décorateur

greet

est défini comme une fonction qui prend une fonction en argument (

func

) et retourne une fonction wrapper. La fonction wrapper est définie à l’intérieur de la fonction

greet

et retourne une version modifiée de la fonction originale en ajoutant une salutation à son résultat.

La syntaxe

@greet

au-dessus de la fonction

message

est un raccourci pour dire

message = greet(message)

. Cela s’appelle “décorer” la fonction

message

avec le décorateur

greet

. Lorsque vous appelez

message()

, cela appelle la fonction wrapper, qui à son tour appelle la fonction originale

message

et retourne le résultat modifié.

Voici un exemple de décorateur simple qui ajoute une salutation à une fonction qui retourne un message :

 

 

def greet(func):
def wrapper():
return "Hello, " + func()
return wrapper

@greet
def message():
return "world"

print(message()) # Output: "Hello, world"

 

Please follow and like us:
Pin Share