Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Python Programming >> .

Python Lambda Tutorial

Le espressioni lambda sono una potente funzione nel linguaggio di programmazione Python . Tuttavia, possono essere un po 'intimidatorio a prima vista, soprattutto perché non hanno un equivalente diretto in linguaggi come Java , che la maggior parte dei corsi di programmazione sono tenuti in Queste espressioni consentono al programmatore di definire funzioni anonime al volo e assegnarli a un nome di variabile . È possibile creare una serie di funzioni con lambda e assegnare tutti a un unico nome di variabile . Istruzioni
1

definire una funzione con la parola chiave lambda e assegnarlo a la "somma" nome di variabile

>>> sum = lambda x , y : . X + y

test per vedere se la vostra funzione lambda funziona con il seguente comando :

>>> somma ( 2,2 ) 4

Questo dimostra l' assoluta minima per la lambda , ma si può fare un po 'di più con esso .
2

Definire più di una funzione lambda per una singola variabile.

operazione >>> = { ' somma ' : lambda x , y : x + y , ' sub ' : lambda x , y : xy , ' mul ' : lambda x , y : x * y , ' div ' : lambda x , y : x /y} >>> operazione [' sum '] ( 2,2 ) 4 >>> operazione [' mul '] (2,4 ) 8 >>> operazione [' div '] ( 4,4 ) 1 >>> operazione [' sub '] (4,1 ) 3

che ancora non svela una delle caratteristiche più belle di lambda . In realtà, più di ogni altra caratteristica , questa è quella che genera il maggior entusiasmo per le funzioni lambda in lingue più vecchi come LISP che lo sostenevano .
3

Usa lambda a , in un unico linea , eseguire un'operazione su ogni elemento in un elenco e restituire una nuova lista contenente i risultati dell'operazione .

>>> alist = [ 0 , 1 , 2 , 3 , 4 ] > mappa >> (lambda x : x * 6 , alist ) [ 0 , 6 , 12 , 18 , 24 ]

per un altro esempio , per trovare le lunghezze di tutte le parole in una stringa , utilizzare il seguendo funzione lambda :

>>> stringa = "E 'stata una lunga giornata in ufficio , ma quando torno a casa a te, è valsa la pena . " >>> ; map ( 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 ]

Questo permette ai programmatori di fare, in una breve e facile da leggere linea , quello che un programmatore Java richiederebbe quattro o cinque linee di raggiungere .


 

Programmazione © www.354353.com