Lambda Python

La fonction lambda est une petite fonction anonyme.

La fonction lambda peut accepter un nombre quelconque de paramètres, mais ne peut contenir qu'une seule expression.

grammaire

lambda arguments : expression

Exécuter l'expression et renvoyer le résultat :

Exemple

Une fonction lambda qui ajoute 10 au nombre传入 en tant que paramètre, puis affiche le résultat :

x = lambda a : a + 10
print(x(5))

Exécuter l'exemple

La fonction lambda peut accepter un nombre quelconque de paramètres :

Exemple

Une fonction lambda qui multiplie les paramètres a et b et affiche le résultat :

x = lambda a, b : a * b
print(x(5, 6))

Exécuter l'exemple

Exemple

Une fonction lambda qui ajoute les paramètres a, b et c et affiche le résultat :

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))

Exécuter l'exemple

Pourquoi utiliser la fonction lambda ?

Lorsque vous utilisez lambda en tant que fonction anonyme à l'intérieur d'une autre fonction, cela montre mieux la puissance de lambda.

Supposons que vous ayez une définition de fonction avec un paramètre, et ce paramètre sera multiplié par un nombre inconnu :

def myfunc(n):
  retourner lambda a : a * n

Utilisez cette définition de fonction pour créer une fonction qui double toujours le nombre envoyé :

Exemple

def myfunc(n):
  retourner lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))

Exécuter l'exemple

Ou, créez une fonction qui augmente toujours le nombre que vous envoyez de trois fois :

Exemple

def myfunc(n):
  retourner lambda a : a * n
mytripler = myfunc(3)
print(mytripler(11))

Exécuter l'exemple

Ou, utilisez la même définition de fonction dans le même programme pour générer deux fonctions :

Exemple

def myfunc(n):
  retourner lambda a : a * n
mydoubler = myfunc(2)
mytripler = myfunc(3)
print(mydoubler(11)) 
print(mytripler(11))

Exécuter l'exemple

Si vous avez besoin d'une fonction anonyme en un laps de temps court, utilisez la fonction lambda.