Bem vindo de volta.
Vamos falar sobre algo que eu realmente amo e se chama LAMDA.
Expressões.
E LAMDA é na verdade um sistema de computador que é realmente compatível com essa ideia de programação funcional, você
vê as expressões lambda em Python são funções anônimas que você não precisa mais de uma vez.
O que isso significa?
Bem, as expressões lambda são muito, muito úteis quando você as usa para funções que A você usa apenas
uma vez.
Lembra-se de como falamos sobre as funções serem úteis porque podemos defini-las e, em seguida,
usar essas funções continuamente e, assim, nos poupar de copiar e colar código?
Bem, as funções lambda são para aquelas ocasiões em que temos uma função, mas só precisamos usá-la uma
vez.
E a segunda parte é que existem funções anônimas.
Isso porque nós os usamos apenas uma vez.
Não precisamos ter um nome para eles porque, quero dizer, não precisamos realmente armazená-los em qualquer lugar de
nossas máquinas.
Eu só quero usar uma vez.
Basta executá-lo e pronto.
Apenas jogue fora.
Então, como uma função lamda se parece com uma função lamda assim, dizemos lamda em Python.
Deixe-me adicionar um pouco de espaço aqui para que possamos ver.
Dizemos Lamda e você pode ver que está destacado em azul e então direi um parâmetro que essa
função obterá e, em seguida, um Callon e algum tipo de função aqui.
E o parâmetro.
Ou, em vez de função, será algum tipo de manipulação que fazemos.
Então, digamos a ação que queremos assumir em um parâmetro.
Tudo bem, isso ainda parece confuso, então vamos tentar implementá-lo em nossas funções que
criamos.
Digamos que multiplicar por dois seja uma daquelas coisas que usaremos apenas uma vez.
Eu só quero multiplicar por dois esta minha lista e então estou feito com ela.
Não preciso salvá-lo na memória, é apenas um código extra.
Eu não preciso disso.
Como podemos fazer isso?
Bem, digamos que temos a função de mapa de volta aqui e vamos transformá-la em uma lista.
E por agora, vou apenas minimizar isso, então vamos nos concentrar apenas na multiplicação por dois e aqui
vamos voltar a multiplicar por dois.
Lembra como tínhamos antes?
Minha lista, e não precisamos do terceiro parâmetro assim agora com uma função lambda, posso dizer, ei, não
preciso criar uma função totalmente nova.
Só vou usar uma vez.
Vamos apenas remover isso completamente.
E em vez de usar multiplicação por dois, direi lambda.
E aqui vou dar o parâmetro, que parâmetro vou receber?
Bem, vou receber um item da minha lista e aqui, o que queremos fazer com a minha lista?
Bem, eu quero multiplicar por dois.
Tudo bem, isso poderia funcionar?
Vamos dar uma chance.
Eu estou indo correr.
Uau, você viu isso?
Nem usei multiplicado por dois, aliás, posso simplesmente deletar.
E se eu clicar em executar.
Tudo ainda funciona.
Agora, por que isso, lembre-se, as expressões lambda são funções anônimas uma vez, não há nome associado a esta
função.
Esta é a função aqui.
Que você não precisa executar mais de uma vez, então, uma vez que o interpretador executa esta linha de código, ele não se lembra
disso.
Ele simplesmente se esquece disso.
Mas ele executa a ação para nós.
Em nosso caso, estamos dizendo, ei, quero criar uma expressão lambda.
Vou pegar um item da minha lista.
E então vou multiplicar esse item por vezes também, e isso o retorna automaticamente, a
ordem que fazemos é LAMDA.
Então.
Nós damos-lhe o Paran.
Colin, e então a ação que queremos realizar em nosso caso, Elby Perram, e qualquer ação que
desejamos realizar, como.
Então, no nosso caso, Eitam vezes dois e isso retorna automaticamente.
Quão legal é isso?
Este é um recurso muito bom do Python para manter seu código muito bom e limpo e não desordenado com
todas essas funções.
E outras linguagens podem não ter lambdas, mas às vezes são chamadas de funções anônimas, novamente, algo
que discutimos por que são anônimas.
Eles são como funções normais e até se comportam como eles, mas só os usamos uma vez e eles não têm nenhuma, mas
você pode ver aqui que isso torna as coisas um pouco mais limpas.
E se tentássemos filtrar agora com uma função lamda?
Bem, se você quiser, pode postar um vídeo e experimentar por si mesmo, mas deve ser bem fácil, certo?
Se eu fizer um filtro, posso fazer lamda.
Item e, em seguida, item.
Bem, apenas copie isso.
Portanto, a ação que queremos realizar em relação ao item é esta.
E se eu executar.
Mais uma vez, funciona, que bom que não precisa mais dessa função também.
Muito muito bom.
Que tal reduzir?
Podemos usar reduzir com LAMDA?
Claro, por que não?
Digamos que aqui vamos dizer reduzir.
Vamos remover a lista daqui porque estamos apenas produzindo um único valor.
Vou dizer LAMDA.
Item, lembre-se, reduzir aceita dois parâmetros, o acumulador e depois o item, então posso apenas atribuir a parâmetros
como este e dizer, o que queremos fazer?
Bem, eu só quero adicionar um acumulador com o item.
Então, se eu fizer minha lista aqui assim e clicar em executar.
Dê uma olhada.
Isso também funciona.
Quão legal é isso?
Novamente, não precisamos mais do acumulador e agora temos apenas funções de uma linha
que posso executar e reduzir imediatamente a lista.
Muito, muito legal.
Vamos explorar um pouco mais os lambdas, principalmente na parte de compreensões do
curso.
Portanto, se você ainda não está 100 por cento neles, não se preocupe, teremos mais casos de uso e por que
eles são úteis posteriormente no curso.
Mas as expressões lambda eu realmente gosto, elas tornam o seu código muito, muito pequeno.
No entanto, eles tornam o código um pouco menos legível.
Portanto, é uma troca em que você pode ficar realmente esperto com as expressões lambda, mas tornar seu código realmente
confuso para os outros, portanto, seja cuidadoso.
Por enquanto, terminamos.
Te vejo no próximo vídeo, do.