Ben tornato.
Parliamo di qualcosa che amo davvero, davvero, e si chiama LAMDA.
di espressione.
E LAMDA è in realtà un sistema informatico che è davvero compatibile con questa idea di programmazione funzionale, vedi le
espressioni lambda in Python sono funzioni anonime una volta che non ti servono più di una volta.
Che cosa significa?
Bene, le espressioni lambda sono davvero, davvero utili quando le usi per funzioni che A usi solo
una volta.
Ricordi come abbiamo parlato delle funzioni utili perché possiamo definirle e quindi utilizzare queste funzioni
più e più volte e quindi salvarci dal copia e incolla del codice?
Bene, le funzioni lambda sono per quelle occasioni in cui abbiamo una funzione, ma dobbiamo usarla solo una
volta.
E poi la seconda parte è che ci sono funzioni anonime.
Questo perché li usiamo solo una volta.
Non abbiamo bisogno di avere un nome per loro perché voglio dire, non abbiamo davvero bisogno di memorizzarli da nessuna parte sulle
nostre macchine.
Voglio usarlo solo una volta.
Basta eseguirlo e poi ho finito.
Basta buttarlo via.
Quindi, come appare una funzione lamda come una funzione lamda ha questo aspetto, diciamo lamda in Python.
Permettetemi solo di aggiungere un po' di spazio qui, così possiamo vedere.
Diciamo Lamda e puoi vedere che è evidenziato in blu e poi dirò un parametro che questa
funzione otterrà e poi un Callon e poi una sorta di funzione qui.
E il parametro.
O invece della funzione, sarà una sorta di manipolazione che facciamo.
Quindi diciamo l'azione che vogliamo intraprendere su un parametro.
Va bene, questo sembra ancora confuso, quindi proviamo a implementarlo nelle nostre funzioni che abbiamo
creato.
Quindi diciamo che moltiplicare per due è una di quelle cose che useremo solo una volta.
Voglio solo moltiplicare per due questa mia lista e poi ho finito.
Non ho bisogno di salvarlo in memoria è solo un pezzo di codice in più.
Non ho bisogno di questo.
Come possiamo farlo?
Bene, diciamo che abbiamo la funzione mappa qui e trasformiamola in una lista.
E per ora, lo ridurrò al minimo, quindi ci concentriamo solo sulla moltiplicazione per due e qui
torniamo a moltiplicare per due.
Ricordi come lo avevamo prima?
La mia lista, e non abbiamo bisogno del terzo parametro proprio così ora con una funzione lambda, posso dire, ehi, non ho
bisogno di creare una funzione completamente nuova.
Lo userò solo una volta.
Rimuoviamolo completamente.
E invece di usare moltiplicare per due, dirò lambda.
E qui, ti darò il parametro, quale parametro riceverò?
Bene, riceverò un articolo dalla mia lista e poi qui dentro, cosa vogliamo fare alla mia lista?
Bene, voglio moltiplicarlo per due.
Va bene, potrebbe funzionare?
Proviamo.
vado a correre.
Wow, l'hai visto?
Non ho nemmeno usato moltiplicato per due, anzi, posso semplicemente cancellarlo.
E se clicco su Esegui.
Tutto funziona ancora.
Ora, perché questo ricorda, le espressioni lambda sono funzioni anonime una volta, non c'è alcun nome associato a questa
funzione.
Questa è la funzione qui.
Che non è necessario eseguire più di una volta, quindi una volta che l'interprete esegue questa riga di codice, non lo
ricorda.
Se ne dimentica.
Ma esegue l'azione per noi.
Nel nostro caso, stiamo dicendo, ehi, voglio creare un'espressione lambda.
Prenderò un articolo dalla mia lista.
E poi moltiplicherò anche quell'elemento per volte, e questo lo restituisce automaticamente di nuovo,
l'ordine che facciamo è LAMDA.
Quindi.
Gli diamo il Paran.
Colin, e poi l'azione che vogliamo intraprendere nel nostro caso, Elby Perram, e qualsiasi azione
vogliamo fare, tipo.
Quindi nel nostro caso, Eitam moltiplica due e questo ritorna automaticamente.
Quant'è fico?
Questa è una caratteristica davvero interessante di Python per mantenere il tuo codice davvero bello e pulito e non ingombrare con
tutte queste funzioni.
E altri linguaggi potrebbero non avere lambda, ma a volte sono chiamati funzioni anonime, di nuovo, qualcosa
di cui abbiamo discusso perché sono anonime.
Sono proprio come le normali funzioni e si comportano anche come loro, ma le usiamo solo una volta e non ne hanno,
ma puoi vedere qui che rende le cose un po' più pulite.
E se provassimo a filtrare ora con una funzione lamda?
Bene, se vuoi, puoi postare un video e provare tu stesso, ma dovrebbe essere abbastanza facile, giusto?
Se faccio un filtro, posso fare lamda.
Articolo e poi articolo.
Bene, copia questo.
Quindi l'azione che vogliamo intraprendere sull'oggetto è questa.
E se lo eseguo.
Ancora una volta, funziona, quanto è bello che non sia più necessaria nemmeno questa funzione.
Molto molto carino.
E per ridurre?
Possiamo usare la riduzione con LAMDA?
Certo, perché no?
Diciamo che qui diremo ridurre.
Rimuoveremo l'elenco da qui perché stiamo solo producendo un singolo valore.
Sto per dire LAMDA.
Item, ricorda, reduce accetta due parametri, l'accumulatore e poi l'item, quindi posso darlo a parametri come
questo e poi dire, cosa vogliamo fare?
Bene, voglio solo aggiungere l'accumulatore con l'oggetto.
Quindi, se faccio la mia lista qui in questo modo e clicco su Esegui.
Controllalo.
Anche quello funziona.
Quant'è fico?
Ancora una volta, non abbiamo più bisogno dell'accumulatore e ora abbiamo solo funzioni di una
riga che posso eseguire e ridurre immediatamente l'elenco.
Molto, molto cool.
Esploreremo un po' di più le lambda, specialmente nella parte di comprensione del
corso.
Quindi, se non sei ancora al 100% su di loro, non preoccuparti, avremo più casi d'uso e perché
sono utili più avanti nel corso.
Ma le espressioni lambda mi piacciono davvero molto, rendono il tuo codice davvero, davvero piccolo.
Tuttavia, rendono il codice un po' meno leggibile.
Quindi è un compromesso in cui puoi diventare davvero intelligente con le espressioni lambda, ma rendi il tuo codice davvero confuso
per gli altri, quindi vuoi stare attento.
Per ora abbiamo finito.
Ci vediamo nel prossimo video di.