Mappa Python ()

La funzione map () applica una data funzione a ogni elemento di un iterabile (lista, tupla ecc.) E restituisce un elenco dei risultati.

La sintassi di map()è:

 mappa (funzione, iterabile, …)

Parametro map ()

  • funzione : map()passa ogni elemento dell'iterabile a questa funzione.
  • iterabile - iterabile che deve essere mappato

È possibile passare più di un iterabile alla map()funzione.

Valore restituito dalla mappa ()

La map()funzione applica un dato a funzione a ogni elemento di un iterabile e restituisce un elenco dei risultati.

Il valore restituito da map()(map object) può quindi essere passato a funzioni come list () (per creare un elenco), set () (per creare un set) e così via.

Esempio 1: utilizzo di map ()

 def calculateSquare(n): return n*n numbers = (1, 2, 3, 4) result = map(calculateSquare, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)

Produzione

 (16, 1, 4, 9)

Nell'esempio precedente, ogni elemento della tupla è al quadrato.

Poiché si map()aspetta che una funzione venga passata, le funzioni lambda vengono comunemente utilizzate mentre si lavora con le map()funzioni.

Una funzione lambda è una funzione breve senza nome. Visita questa pagina per saperne di più sulla funzione lambda di Python.

Esempio 2: come utilizzare la funzione lambda con map ()?

 numbers = (1, 2, 3, 4) result = map(lambda x: x*x, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)

Produzione

 (16, 1, 4, 9)

Non c'è differenza nelle funzionalità di questo esempio e dell'Esempio 1 .

Esempio 3: passaggio di più iteratori a map () utilizzando Lambda

In questo esempio, vengono aggiunti gli elementi corrispondenti di due elenchi.

 num1 = (4, 5, 6) num2 = (5, 6, 7) result = map(lambda n1, n2: n1+n2, num1, num2) print(list(result))

Produzione

 (9, 11, 13)

Articoli interessanti...