Les expressions lambda sont une fonctionnalité puissante dans le langage de programmation Python. Toutefois, ils peuvent être un peu intimidant au premier coup d'œil , d'autant plus qu'ils n'ont pas d'équivalent direct dans langages comme Java que la plupart des cours de programmation sont enseignées en jeu. Ces expressions permettent au programmeur de définir des fonctions anonymes à la volée et assigner à un nom de variable . Vous pouvez créer un tableau de fonctions avec lambda et leur attribuer tous à un seul nom de variable. Instructions
1
définir une fonction avec le mot-clé lambda et l'affecter à la " somme" nom de Variable:
>>> somme = lambda x , y: . X + y
test pour voir si votre fonction lambda fonctionne avec la commande suivante:
>>> somme ( 2,2 ) 4 étoiles
Cela montre l' absolue minimum pour lambda , mais vous pouvez faire un peu plus avec elle.
2
définir plus d'une fonction lambda à une seule variable.
>>> opération = { «somme» : lambda x , y: x + y, ' sub' : lambda x , y: xy , ' mul ': lambda x , y: x * y , 'div' : lambda x , y: x /y} >>> opération [' somme '] ( 2,2 ) 4 >>> opération [' mul '] ( 2,4 ) 8 >>> opération [ 'div' ] ( 4,4 ) 1 >>> opération [' sub' ] ( 4,1 ) 3 étoiles
ne révèle toujours pas l'une des caractéristiques les plus spectaculaires de lambda . En fait, plus que toute autre caractéristique , c'est celui qui génère le plus d'enthousiasme sur les fonctions lambda dans les langues anciennes comme LISP qui soutenaient.
3
utilisation lambda , en une seule ligne , effectuer une opération sur chaque élément d'une liste et retourne une nouvelle liste contenant les résultats de l'opération .
>>> alist = [0 , 1, 2 , 3, 4 ]> >> carte (lambda x: x * 6, alist ) [0, 6, 12, 18, 24 ]
Pour un autre exemple, pour trouver les longueurs de tous les mots dans une chaîne , utilisez la suite fonction lambda :
>>> string = " ce fut une très longue journée au bureau, mais quand je rentre à la maison pour vous , il est tout vaut la peine. " >>> ; carte (lambda x : len ( x ) , string.split ( ) ) [ 2, 3, 1 , 4, 4, 3, 2, 3, 7, 3 , 4, 1, 4 , 4, 2 , 4 , 2, 2, 3, 11 ]
Cela permet à un programmeur de le faire , dans un court et facile à lire en ligne, ce qui un programmeur Java , il faudrait quatre ou cinq lignes à atteindre.