Python Lambda
Une fonction lambda est une petite fonction anonyme.
Une fonction lambda peut prendre n'importe quel nombre d'arguments, mais ne peut avoir qu'une seule expression.
Syntaxe
lambda arguments : expression
L'expression est exécutée et le résultat est renvoyé :
Exemple
Ajoutez 10 à l'argument a
et renvoyez le résultat :
x = lambda a : a + 10
print(x(5))
Les fonctions Lambda peuvent prendre n'importe quel nombre d'arguments :
Exemple
Multipliez argument a
par argument
b
et retournez le résultat :
x = lambda a, b : a * b
print(x(5, 6))
Exemple
Résumez les arguments a
,
b
, et c
et renvoyez le résultat :
x = lambda a, b, c : a + b + c
print(x(5, 6,
2))
Pourquoi utiliser les fonctions Lambda ?
La puissance de lambda est mieux mise en évidence lorsque vous les utilisez en tant que fonction anonyme dans une autre fonction.
Supposons que vous ayez une définition de fonction qui prend un argument, et cet argument sera multiplié par un nombre inconnu :
def myfunc(n):
return lambda a : a * n
Utilisez cette définition de fonction pour créer une fonction qui double toujours le nombre que vous envoyez :
Exemple
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))
Ou, utilisez la même définition de fonction pour créer une fonction qui triple toujours le nombre que vous envoyez :
Exemple
def myfunc(n):
return lambda a : a * n
mytripler = myfunc(3)
print(mytripler(11))
Ou, utilisez la même définition de fonction pour créer les deux fonctions, dans le même programme :
Exemple
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11))
print(mytripler(11))
Utilisez les fonctions lambda lorsqu'une fonction anonyme est requise pendant une courte période.