La funzione map in python
Nel linguaggio python la funzione map chiama una funzione passandogli come argomento gli elementi di un oggetto iterabile.
map(funzione, oggetto)
L'istruzione map ha due argomenti:
- La funzione da chiamare in ogni iterazione.
- L'oggetto iterabile contenente i valori da passare come input della funzione.
Un esempio pratico
Esempio 1
In questo script definisco una semplice funzione prova che moltiplica per due l'argomento in input.
- def prova(num):
- return num*2
- for n in map(prova, [1,2,3]):
- print(n)
Poi chiamo la funzione prova tramite la funzione map, passandogli una lista di valori [1,2,3] come argomento in input.
La funzione prova viene chiamata tre volte, ogni volta con un valore in input diverso.
L'output dello script è il seguente:
2
4
6
Esempio 2
La funzione map può passare anche due o più argomenti per volta.
- def prova(a,b):
- return a+b
- for n in map(prova, [1,2,3], [4,5,7]):
- print(n)
In questo caso, la funzione prova viene eseguita sempre tre volte.
La prima volta riceve in input i valori 1 e 4. La seconda volta i valori 2 e 5. La terza volta i valori 3 e 6.
L'output dello script è il seguente:
5
7
10
E così via.