Uso de la función map en Python para transformar listas
Curso de Python: Comprehensions, Funciones y Manejo de Errores
Contenido del curso
Conjuntos
Comprehensions
Funciones
- 9

Funciones en Programación: Creación y Uso en Python
09:47 min - 10

Funciones en Python: Retorno de Valores y Reutilización de Código
10:03 min - 11

Funciones en Python: Retorno múltiple y valores por defecto
06:30 min - 12

Entendiendo el Scope en Python: Variables y Funciones
07:54 min - 13

Refactorización de Juegos en Python: Uso de Funciones
15:10 min - 14

Funciones Lambda en Python: Sintaxis y Aplicaciones Prácticas
06:39 min - 15

Funciones de Orden Superior en Python: Concepto y Ejemplos Prácticos
08:48 min - 16

Uso de la función map en Python para transformar listas
Viendo ahora - 17

Transformaciones con Map en Diccionarios Complexos
09:56 min - 18

Manejo de referencias en memoria con diccionarios y map en Python
04:12 min - 19

Filtrado de listas con Filter en Python
09:19 min - 20

Uso de Reduce en Python para Manipular Listas
07:45 min
Módulos
Manipulación de archivos y errores
- 25

Control manual de iteradores en Python con next
06:33 min - 26

Errores y Excepciones en Python: Identificación y Manejo Básico
08:28 min - 27

Manejo de Errores en Python: Uso de Try y Except
08:17 min - 28

Lectura y manejo de archivos de texto en Python
06:52 min - 29

Lectura y escritura de archivos de texto en Python
06:11 min - 30

Procesamiento de Archivos CSV en Python para Análisis de Datos
15:49 min
Gráficas en Python
Próximos pasos
Recursos
Resumen
Transformar cada elemento de una lista es una de las operaciones más frecuentes en Python, y la función map permite hacerlo de forma elegante, concisa y aprovechando conceptos como higher order functions y lambda functions. Comprender cómo funciona map te ahorra líneas de código y te prepara para trabajar con estructuras de datos más complejas como diccionarios.
¿Qué es map y por qué se usa para transformar listas?
La función map tiene un propósito claro: aplicar una transformación a cada elemento de una lista y devolver una nueva lista con la misma cantidad de elementos [0:28]. Si entran cuatro elementos, salen cuatro elementos, pero transformados.
Una analogía sencilla lo ilustra bien: imagina una lista con ingredientes crudos —una vaca, un pollo, maíz y una papa—. Al pasar cada uno por la función "cocinar", obtienes una hamburguesa, un pollo asado y así sucesivamente [0:42]. El número de elementos no cambia, solo su forma.
¿Cómo se transforma una lista sin map?
La forma tradicional requiere tres pasos [1:42]:
- Crear una lista vacía para almacenar los resultados.
- Iterar con un
forsobre la lista original. - Usar
appendpara agregar cada elemento transformado.
python numbers = [1, 2, 3, 4] numbers_v2 = [] for i in numbers: numbers_v2.append(i * 2) print(numbers_v2) # [2, 4, 6, 8]
Funciona, pero ocupa varias líneas y obliga a gestionar manualmente la nueva lista.
¿Cómo se usa map con lambda para simplificar el código?
map es una higher order function: recibe una función como argumento y la aplica a cada elemento del iterable que le indiques [2:28]. Al combinarla con una lambda function, todo se resuelve en una sola línea:
python numbers_v3 = list(map(lambda i: i * 2, numbers)) print(numbers_v3) # [2, 4, 6, 8]
El detalle importante es que map devuelve un iterable, no una lista directamente. Por eso es necesario envolverlo con list() para obtener el resultado como lista [3:05].
- No necesitas crear una lista vacía previamente.
- No necesitas un bucle
forexplícito. - La lambda define la transformación: recibe
iy retornai * 2.
¿Puede map iterar dos listas al mismo tiempo?
Una capacidad muy útil de map es que acepta múltiples listas como argumento [4:05]. La lambda recibe tantos parámetros como listas le envíes.
python numbers_1 = [1, 2, 3, 4] numbers_2 = [5, 6, 7] result = list(map(lambda x, y: x + y, numbers_1, numbers_2)) print(result) # [6, 8, 10]
Aquí la operación suma elemento a elemento: 1+5, 2+6, 3+7. El resultado contiene solo tres elementos porque map se detiene en la lista más corta [4:48]. El cuatro de la primera lista no tiene pareja en la segunda, así que se ignora.
¿Qué pasa con el tamaño de las listas?
Este comportamiento es clave para evitar errores:
mapitera hasta agotar la lista de menor longitud.- No lanza excepciones ni rellena con valores nulos.
- El resultado siempre tendrá el tamaño de la lista más pequeña.
¿Cuándo conviene usar map en el día a día?
La verdadera potencia de map aparece cuando trabajas con listas de diccionarios, que es el caso más habitual en proyectos reales [5:23]. Datos provenientes de APIs, bases de datos o archivos JSON suelen llegar en ese formato, y map permite transformar cada registro de forma limpia.
Algunos puntos para recordar:
mapsiempre devuelve la misma cantidad de elementos que recibe.- Combínalo con
list()para materializar el resultado. - Usa lambda functions para transformaciones simples y funciones definidas con
defpara lógica más compleja. - Al iterar varias listas, la más corta marca el límite.
Si ya dominas map con valores numéricos, el siguiente paso natural es aplicarlo a listas de diccionarios, donde cada transformación puede renombrar campos, calcular nuevos valores o filtrar propiedades. ¿Con qué tipo de datos te gustaría probarlo?