Vai al contenuto principale
Pubblicato il

map in Python

Condividi:

Introduzione

La funzione map in Python è una delle varie funzioni integrate che promuovono uno stile di programmazione funzionale. Consente di applicare una funzione a tutti gli elementi di un input (ad esempio, una lista), restituendo un iteratore.

Come Funziona map?

La funzione map accetta due o più argomenti: una funzione e uno o più iterabili. La funzione passata viene applicata a tutti gli elementi dell'iterabile.

def quadrato(numero):
  return numero * numero

numeri = [1, 2, 3, 4]
risultato = map(quadrato, numeri)
print(list(risultato))  # [1, 4, 9, 16]

Perché Usare map?

1. Leggibilità

L'uso di map rende il codice più pulito e facile da leggere, soprattutto rispetto all'uso dei cicli.

2. Efficienza

map restituisce un iteratore, il che significa che calcola il valore successivo solo quando necessario.

3. Flessibilità

Con map, possiamo applicare una funzione a più iterabili. Se forniamo più di un iterabile, la funzione deve accettare lo stesso numero di argomenti quanti sono gli iterabili.

nomi = ['anna', 'rita', 'pietro']
iniziali = map(lambda nome: nome[0].upper(), nomi)
print(list(iniziali))  # ['A', 'R', 'P']

Alternative a map

Comprehension di Liste

È possibile usare le comprehension di liste per ottenere un risultato simile a map.

numeri = [1, 2, 3, 4]
quadrati = [x*x for x in numeri]
print(quadrati)  # [1, 4, 9, 16]

Conclusione

La funzione map è uno strumento essenziale nell'arsenale di qualsiasi programmatore Python. Non solo promuove la leggibilità e l'efficienza, ma offre anche un modo elegante per trasformare i dati.

Happy coding!