> Les bases > Le langage > Décorateurs
Décorateurs
Decorator :
- c'est en fait une fonction qui retourne une autre fonction de façon à faire du travail avant l'appel et après l'appel de la fonction initiale.
- exemple :
@staticmethod
def f(...):
....
est équivalent à :
def f(...):
...
f = staticmethod(f)
- d'une manière générale :
@f1(arg)
@f2
def func():
...
est équivalent à :
def func():
...
func = f1(arg)(f2(func))
decorateur @property : permet de convertir une fonction en propriété, pour y accéder comme si c'était un champ :
class C:
def __init__(self, a):
self.a = a
@property
def A(self):
return self.a
on peut alors faire
obj = C(3); obj.A (au lieu de
obj.A()) pour accéder au champ a.
Copyright python-simple.com
programmer en python, tutoriel python, graphes en python, Aymeric Duclert