⊗pyPmFnMa 17 of 129 menu

Funzione map per iterare oggetti in Python

Supponiamo di avere una funzione square per elevare i numeri al quadrato. E c'è una lista, i cui elementi devono essere applicati a questa funzione:

def square(num): return num ** 2 lst = [2, 3, 6, 8, 15]

In Python per risolvere questo problema, si può usare una funzione speciale map. Accetta come parametri una funzione e una lista, ai cui elementi deve essere applicata. Usiamo map per risolvere l'esempio:

res = map(square, lst) print(res)

Ogni lista, come qualsiasi oggetto complesso, occupa molto spazio nella memoria di sistema di Python. Pertanto, per risparmiare risorse, dopo l'esecuzione del codice, non verrà restituita una nuova lista, ma un speciale oggetto iterabile map:

<map object at 0x000001F16674BA00>

Iteriamolo con un ciclo:

for el in res: print(el)

Come risultato, verranno stampati tutti gli elementi della nuova lista:

4 9 36 64 225

Per creare una nuova lista dall'oggetto map, è necessario applicare ad esso la funzione list:

lst = [2, 3, 6, 8, 15] res = map(square, lst)

Come risultato, verrà stampata la seguente lista:

[4, 9, 36, 64, 225]

Inoltre, quando si lavora con la funzione map, nel primo parametro è possibile specificare una funzione lambda. Riscriviamo l'esempio precedente usando una funzione lambda:

res = map(lambda num: num ** 2, lst, lst) print(list(res))

Riscrivi il seguente codice utilizzando una funzione lambda:

def func(num): return num + 1 lst = [1, 2, 3, 4, 5] res = map(func, lst) print(list(res))

Riscrivi il seguente codice utilizzando una funzione lambda:

def func(txt): return txt[::-1] lst = ['123', '456', '789'] res = map(func, lst) print(list(res))
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta