Nov 27, 2024

Wiki

Python

Aide

edit SideBar

Search

Les Decorators


Donnons un exemple :

  >>> def plus3(f):
  ...     return lambda x : f(x) + 3
  ... 
  >>> @plus3
  ... def puissance2(x):
  ...     return x**2
  ... 
  >>> puissance2(2) 
  7
  >>> puissance2(3)
  12

Dans ce qui précède, on applique toujours, au résultat de puissance2, la fonction plus3. Ainsi, puissance2(2) n'est pas égal à $2^2$, mais à $2^2+3$.

On réalise ainsi la composition de fonctions :

puissance2 = plus3 o puissance2

c'est-à-dire

puissance2(x) = plus3 (puissance2(x))

Le decorator est donc une fonction qui s'applique à une fonction, pour réaliser l'équivalent de la composition.

Page Actions

Recent Changes

Group & Page

Back Links