⊗pyPmFnMa 17 of 129 menu

Función map para iterar objetos en Python

Supongamos que tenemos una función square para elevar números al cuadrado. Y hay una lista a cuyos elementos necesitamos aplicar esta función:

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

En Python, para resolver esta tarea, se puede usar una función especial map. Toma como parámetros una función y una lista, a cuyos elementos debe aplicarse. Usemos map para resolver el ejemplo:

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

Cada lista, como cualquier objeto complejo, ocupa mucho espacio en la memoria del sistema de Python. Por lo tanto, para ahorrar recursos, después de ejecutar el código, no se devolverá una nueva lista, sino un objeto map iterable especial:

<map object at 0x000001F16674BA00>

Iterémoslo con un ciclo:

for el in res: print(el)

Como resultado, se mostrarán todos los elementos de la nueva lista:

4 9 36 64 225

Para crear una nueva lista a partir de un objeto map, se debe aplicar la función list a él:

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

Como resultado, se mostrará la siguiente lista:

[4, 9, 36, 64, 225]

También, al trabajar con la función map en el primer parámetro, se puede definir una función lambda. Reescribamos el ejemplo anterior usando una función lambda:

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

Reescriba el siguiente código usando una función lambda:

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

Reescriba el siguiente código usando una función lambda:

def func(txt): return txt[::-1] lst = ['123', '456', '789'] res = map(func, lst) print(list(res))
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar