English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base di Python

Controllo dei flussi in Python

Funzione in Python

Tipi di dati in Python

Operazioni di file in Python

Oggetti e classi in Python

Data e ora in Python

Conoscenze avanzate di Python

Manuale di Python

Funzione anonima (Lambda) in Python

In questo articolo, imparerai le funzioni anonime, anche chiamate funzioni lambda. Attraverso esempi, imparerai cosa sono, la loro sintassi e come utilizzarle.

Cos'è la funzione lambda in Python?

In Python, le funzioni anonime non hanno un nome di definizione.Funzione.

Nonostante def sia una parola chiave in Python utilizzata per definire funzioni normali, lambda è una parola chiave utilizzata per definire funzioni anonime.

Quindi, le funzioni anonime sono anche chiamate funzioni lambda.

Come utilizzare la funzione lambda in Python?

La funzione lambda in Python ha la seguente sintassi.

Sintassi della funzione lambda in Python

lambda arguments: expression

La funzione lambda può avere un numero arbitrario di parametri, ma può avere solo un'espressione. L'espressione viene valutata e restituita. La funzione lambda può essere utilizzata ovunque sia necessario un oggetto funzione.

Esempio di funzione lambda in Python

Questo è un esempio di funzione lambda che raddoppia il valore di input.

# 展示程序中使用lambda函数
double = lambda x: x * 2
print(double(5))

Risultato di output

10

Nel programma sopra, lambda x: x * 2 è una funzione lambda. Qui x è il parametro, x * 2 è l'espressione di valutazione e restituzione.

Questa funzione non ha un nome. Restituisce un oggetto funzione, che viene assegnato all'identificatore double. Ora possiamo chiamarla funzione normale. Dichiarazione di seguito

double = lambda x: x * 2

equivale a:

def double(x):
   return x * 2

L'uso della funzione lambda in Python

Quando abbiamo bisogno temporaneamente di una funzione anonima, utilizziamo la funzione lambda.

In Python, lo utilizziamo di solito come argomento di funzioni di alto livello (le quali accettano altre funzioni come argomenti)argomenti)。La funzione lambda può essere utilizzata insieme a filter(), map() e altre funzioni native.

Esempio di utilizzo di lambda con filter()

La funzione filter() in Python accetta una funzione e una lista come parametri.

Chiamare la funzione con tutti gli elementi della lista e restituire una nuova lista che contiene gli elementi per cui il risultato della funzione è True.

Questo è un esempio di come filtrare solo i numeri pari dalla lista utilizzando la funzione filter().

# Filtra gli elementi pari dalla lista
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(filter(lambda x: (x % 2 == 0), my_list))
print(new_list)

Risultato di output

[4, 6, 8, 12]

Esempio di utilizzo di lambda con map()

La funzione map() in Python accetta una funzione e una lista.

Chiamare la funzione con tutti gli elementi della lista e restituire una nuova lista che contiene gli elementi restituiti dalla funzione per ciascun elemento.

Questo è un esempio di come moltiplicare per due tutti gli elementi di una lista utilizzando la funzione map().

# Utilizza map() per raddoppiare ogni elemento della lista
my_list = [1, 5, 4, 6, 8, 11, 3, 12]
new_list = list(map(lambda x: x * 2, my_list))
print(new_list)

Risultato di output

[2, 10, 8, 12, 16, 22, 6, 24]