Fonction anonyme
En Python, une fonction est un objet comme un autre.
Par exemple, on peut écrire :
return +1
=
et vérifier que :
== 1
C’est surtout pratique pour donner une fonction comme argument, par exemple
pour la fonction
filter()
de la
bibliothèque standard de Python:
filter(test,liste)
renvoie un itérateur obtenu en ne conservant que les
éléments de liste
qui réussisent le test
.
Testez:
return %2 == 1
Il souvent pénible d’écrire une fonction simple qu’on n’utilisera qu’une fois.
À la place, on peut utiliser une fonction anonyme.
C’est une expression de la forme lambda x,y,…: e
où e
est une expression qui peut
contenir les variables x
, y
, …
Par exemple on aurait pu écrire:
=
=
et surtout, on aurait pu s’abstenir de donner des noms à ces fonctions, et utiliser plutôt:
Le mot-clé lambda
provient du λ-calcul.