lundi 17 avril 2017

Decorators dans python

La decoration dans Python est une méthode simple et statique qui permet de modifier un élément.

Un decorator dans python est un appelable qui permet la décoration.

Dire qu'on décore un élément revient à remplacer un élément par un autre en utilisant la sortie d'un appelable.

Exemple:

@decorator
def my_func(arg):
    retrurn arg


Ceci est exactement équivalent à:

def my_func(arg):
    retrurn arg

my_func = decorator(my_func)


Quel est l'intérêt à décorer un élément? 
Supposons que certaines fonctions effectuent des instructions communes, par exemple des fonctions qui doivent se connecter et se déconnecter d'un serveur avant chaque requête, chacune des fonctions responsable d'une requête. On peut factoriser ces deux opérations dans un décorateur, qui plus d'appeler l'une des fonctions il va effectuer les deux opérations.

Comment définir un décorateur?
Un décorateur est un appelable (callable) qui prendra en argument l'élément à décorer.


  

Decorators dans python

La decoration dans Python est une méthode simple et statique qui permet de modifier un élément. Un decorator dans python est un appelab...