Content de te revoir.
Parlons de quelque chose que j'aime vraiment, vraiment, et qui s'appelle LAMDA.
Expressions.
Et LAMDA est en fait un système informatique qui est vraiment compatible avec cette idée de programmation fonctionnelle, vous voyez que les
expressions lambda en Python sont des fonctions anonymes à usage unique dont vous n'avez pas besoin plus d'une fois.
Qu'est-ce que ça veut dire?
Eh bien, les expressions lambda sont vraiment très utiles lorsque vous les utilisez pour des fonctions que vous n'utilisez qu'une
seule fois.
Rappelez-vous comment nous avons parlé des fonctions sont utiles parce que nous pouvons les définir et ensuite utiliser
ces fonctions encore et encore et ainsi nous éviter de copier et coller du code ?
Eh bien, les fonctions lambda sont destinées aux occasions où nous avons une fonction, mais nous n'avons besoin de l'utiliser qu'une seule
fois.
Et puis la deuxième partie c'est qu'il y a des fonctions anonymes.
C'est parce que nous ne les utilisons qu'une seule fois.
Nous n'avons pas besoin d'avoir un nom pour eux parce que je veux dire, nous n'avons pas vraiment besoin de les stocker n'importe où
sur nos machines.
Je veux juste l'utiliser une fois.
Lancez-le et j'en ai fini avec.
Jetez-le simplement.
Alors, à quoi ressemble une fonction lamda à une fonction lamda ressemble à ceci, nous disons lamda en Python.
Permettez-moi d'ajouter un peu d'espace ici juste pour que nous puissions voir.
Nous disons Lamda et vous pouvez voir qu'il est surligné en bleu, puis je vais dire un paramètre
que cette fonction va obtenir, puis un Callon, puis une sorte de fonction ici.
Et le paramètre.
Ou au lieu de fonction, ce sera une sorte de manipulation que nous ferons.
Disons donc une action que l'on veut entreprendre sur un paramètre.
Très bien, cela semble toujours déroutant, alors essayons de l'implémenter dans nos fonctions que nous avons
créées.
Disons donc que multiplier par deux est l'une de ces choses que nous n'utiliserons qu'une seule fois.
Je veux seulement multiplier par deux cette liste et j'en ai fini avec ça.
Je n'ai pas besoin de l'enregistrer en mémoire, c'est juste un morceau de code supplémentaire.
Je n'ai pas besoin de ça.
Comment pouvons-nous le faire?
Eh bien, disons que nous avons la fonction map ici et transformons-la en liste.
Et pour l'instant, je vais juste minimiser cela afin que nous nous concentrions uniquement sur la multiplication par deux et revenons
ici à la multiplication par deux.
Rappelez-vous comment nous l'avions avant?
Ma liste, et nous n'avons pas besoin du troisième paramètre comme ça maintenant avec une fonction lambda, je peux dire, hé, je n'ai
pas besoin de créer une toute nouvelle fonction.
Je ne vais l'utiliser qu'une seule fois.
Supprimons simplement cela entièrement.
Et au lieu d'utiliser multiplier par deux, je vais dire lambda.
Et là, je vais vous donner le paramètre, quel paramètre vais-je recevoir ?
Eh bien, je vais recevoir un élément de ma liste et puis ici, que voulons-nous faire de ma liste ?
Eh bien, je veux le multiplier par deux.
D'accord, est-ce que ça pourrait marcher ?
Essayons.
Je vais courir.
Waouh, tu as vu ça ?
Je n'ai même pas utilisé multiplié par deux, en fait, je peux simplement le supprimer.
Et si je clique sur exécuter.
Tout fonctionne encore.
Maintenant, pourquoi faut-il se rappeler que les expressions lambda sont des fonctions anonymes ponctuelles, il n'y a pas de nom attaché à cette
fonction.
C'est la fonction ici.
Que vous n'avez pas besoin de l'exécuter plus d'une fois, donc une fois que l'interpréteur exécute cette ligne de code, il ne s'en souvient
pas.
Il l'oublie simplement.
Mais il effectue l'action pour nous.
Dans notre cas, nous disons, hé, je veux créer une expression lambda.
Je vais prendre un élément de ma liste.
Et puis je vais multiplier cet élément par le nombre aussi, et cela le renvoie automatiquement à nouveau,
l'ordre que nous faisons est LAMDA.
Puis.
Nous lui donnons le Paran.
Colin, puis l'action que nous voulons entreprendre dans notre cas, Elby Perram, et quelle que soit l'action que nous
voulons faire, comme.
Donc dans notre cas, Eitam fois deux et cela revient automatiquement.
À quel point cela est cool?
C'est une fonctionnalité vraiment intéressante de Python pour garder votre code vraiment agréable et propre et ne pas encombrer avec
toutes ces fonctions.
Et d'autres langages peuvent ne pas avoir de lambdas, mais ils sont parfois appelés fonctions anonymes, encore une fois, quelque chose
dont nous avons expliqué pourquoi ils sont anonymes.
Ils sont comme des fonctions normales et se comportent même comme eux, mais nous ne les utilisons qu'une seule fois et ils n'en ont pas,
mais vous pouvez voir ici que cela rend les choses un peu plus propres.
Et si on essayait de filtrer maintenant avec une fonction lamda ?
Eh bien, si vous le souhaitez, vous pouvez publier une vidéo et essayer vous-même, mais cela devrait être assez facile, n'est-ce pas ?
Si je fais un filtre, je peux faire lamda.
Article puis article.
Eh bien, copiez simplement ceci.
Donc, l'action que nous voulons entreprendre sur l'élément est la suivante.
Et si je le lance.
Encore une fois, ça marche, comme c'est sympa de ne plus avoir besoin de cette fonction non plus.
Très très gentil.
Et réduire ?
Peut-on utiliser réduire avec LAMDA ?
Bien sûr, pourquoi pas?
Disons qu'ici on dira réduire.
Nous allons supprimer la liste d'ici car nous ne produisons qu'une seule valeur.
Je vais dire LAMDA.
L'élément, rappelez-vous, la réduction accepte deux paramètres, l'accumulateur puis l'élément, donc je peux simplement le donner à des paramètres
comme celui-ci et ensuite dire, que voulons-nous faire ?
Eh bien, je veux juste ajouter un accumulateur avec l'article.
Donc, si je fais ma liste ici comme ça et que je clique sur exécuter.
Vérifiez cela.
Cela fonctionne aussi.
À quel point cela est cool?
Encore une fois, nous n'avons plus besoin de l'accumulateur, et maintenant nous n'avons plus qu'une seule ligne de fonctions
que je peux simplement exécuter et réduire immédiatement la liste.
Très cool.
Nous allons explorer un peu plus les lambdas, notamment dans la partie compréhensions du
cours.
Donc, si vous n'êtes toujours pas à 100% sur eux, ne vous inquiétez pas, nous aurons plus de cas d'utilisation et pourquoi ils
sont utiles plus tard dans le cours.
Mais les expressions lambda que j'aime vraiment, vraiment, elles rendent votre code vraiment, vraiment petit.
Cependant, ils rendent le code un peu moins lisible.
C'est donc un compromis où vous pouvez devenir vraiment intelligent avec les expressions lambda, mais rendre votre code vraiment déroutant pour
les autres, vous devez donc faire attention.
Pour l'instant, nous avons terminé.
Je te verrai dans la prochaine vidéo par.