Las listas y los diccionarios son las herramientas principales para guardar colecciones de datos en Python.
¿Alguna vez has intentado guardar diez productos en diez variables diferentes? Es un caos. Las listas y los diccionarios resuelven exactamente ese problema.
Cuando una sola variable ya no alcanza
Imagina que trabajas en una tienda Liverpool en la Ciudad de México. Tienes que guardar los precios de cinco productos. Sin listas, harías algo así:
producto1 = 350
producto2 = 890
producto3 = 1200
producto4 = 450
producto5 = 670
Es tedioso. Y si tienes cien productos, es imposible.
Con una lista, todo cambia:
precios = [350, 890, 1200, 450, 670]
Una sola variable. Todos los datos adentro. Así de simple.
¿Qué es una lista?
Una lista es una colección ordenada de valores. Se escribe con corchetes [] y los elementos se separan con comas.
productos = ["playera", "pantalón", "tenis", "chamarra"]
Cada elemento tiene una posición llamada índice. El primero siempre es el índice 0.
print(productos[0]) # playera
print(productos[2]) # tenis
La historia de Rodrigo en el almacén
Rodrigo es auxiliar de almacén en una distribuidora FEMSA en Monterrey. Cada día recibe una lista de rutas de reparto. Antes las anotaba en papel. Su jefe le pidió que automatizara el proceso.
Rodrigo aprendió a usar listas en Python:
rutas = ["Zona Norte", "Zona Sur", "Centro", "Aeropuerto"]
print("Primera ruta del día:", rutas[0])
print("Total de rutas:", len(rutas))
Salida en pantalla:
Primera ruta del día: Zona Norte
Total de rutas: 4
Rodrigo ahorra veinte minutos cada mañana. Su jefe quedó impresionado.
Modificar una lista
Las listas no son estáticas. Puedes agregar, cambiar y quitar elementos.
Agregar un elemento al final:
rutas.append("Periferico")
print(rutas)
# ["Zona Norte", "Zona Sur", "Centro", "Aeropuerto", "Periferico"]
Cambiar un elemento:
rutas[1] = "Zona Oriente"
print(rutas[1]) # Zona Oriente
Quitar un elemento:
rutas.remove("Centro")
print(rutas)
# ["Zona Norte", "Zona Oriente", "Aeropuerto", "Periferico"]
Recorrer una lista con un ciclo
En la lección anterior aprendiste funciones. Ahora combina ese conocimiento con listas.
precios = [350, 890, 1200, 450, 670]
for precio in precios:
print("Precio:", precio)
Salida:
Precio: 350
Precio: 890
Precio: 1200
Precio: 450
Precio: 670
El ciclo for visita cada elemento uno por uno. No necesitas saber cuántos hay.
¿Qué es un diccionario?
Un diccionario guarda pares de clave y valor. La clave es el nombre. El valor es el dato.
Se escribe con llaves {} y dos puntos : entre clave y valor.
empleado = {
"nombre": "Ana",
"puesto": "vendedora",
"salario": 14500
}
Para leer un valor, usas la clave:
print(empleado["nombre"]) # Ana
print(empleado["salario"]) # 14500
La historia de Mariana en Bimbo
Mariana es supervisora de producción en una planta Bimbo en Guadalajara. Lleva el control de cada trabajador en su turno. Antes usaba hojas de Excel. Ahora está aprendiendo Python.
Ella creó un diccionario para cada trabajador:
trabajador = {
"nombre": "Carlos",
"turno": "matutino",
"piezas_producidas": 320,
"salario": 18500
}
print("Nombre:", trabajador["nombre"])
print("Piezas hoy:", trabajador["piezas_producidas"])
print("Salario mensual: $" + str(trabajador["salario"]))
Salida:
Nombre: Carlos
Piezas hoy: 320
Salario mensual: $18,500
Mariana puede revisar la información de cualquier trabajador en segundos. Ya no busca en carpetas.
Modificar un diccionario
Cambiar un valor es directo:
trabajador["piezas_producidas"] = 410
print(trabajador["piezas_producidas"]) # 410
Agregar una clave nueva también es fácil:
trabajador["departamento"] = "empaque"
print(trabajador["departamento"]) # empaque
Eliminar una clave:
del trabajador["turno"]
Listas de diccionarios: el combo más poderoso
¿Y si tienes varios trabajadores? Usa una lista de diccionarios.
Cada elemento de la lista es un diccionario completo.
trabajadores = [
{"nombre": "Carlos", "salario": 18500},
{"nombre": "Lupita", "salario": 21000},
{"nombre": "Ernesto", "salario": 16800}
]
for t in trabajadores:
print(t["nombre"], "gana $" + str(t["salario"]))
Salida:
Carlos gana $18,500
Lupita gana $21,000
Ernesto gana $16,800
Esta estructura es muy parecida a cómo se guardan datos en aplicaciones reales. Mercado Libre, por ejemplo, maneja catálogos de millones de productos con estructuras similares.
La historia de Diego en su startup
Diego tiene 24 años. Está construyendo una pequeña app de entregas en Puebla. Necesita guardar los pedidos del día.
Usó una lista de diccionarios:
pedidos = [
{"cliente": "Sofía", "producto": "pizza", "total": 250},
{"cliente": "Héctor", "producto": "sushi", "total": 420},
{"cliente": "Valeria", "producto": "tacos", "total": 180}
]
total_del_dia = 0
for pedido in pedidos:
total_del_dia += pedido["total"]
print("Pedido de", pedido["cliente"] + ":", pedido["producto"])
print("Total del día: $" + str(total_del_dia))
Salida:
Pedido de Sofía: pizza
Pedido de Héctor: sushi
Pedido de Valeria: tacos
Total del día: $850
Diego calculó el total de su día en cuatro líneas. Antes lo hacía a mano.
Errores comunes que debes evitar
Aprender de los errores ajenos es más cómodo que aprenderlos en carne propia. Aquí van los más frecuentes.
Error 1: Índice fuera de rango
productos = ["playera", "pantalón", "tenis"]
print(productos[5]) # ¡Error! Solo hay 3 elementos (índices 0, 1, 2)
Siempre verifica cuántos elementos tiene tu lista antes de acceder por índice.
Error 2: Clave que no existe en el diccionario
empleado = {"nombre": "Ana", "salario": 14500}
print(empleado["edad"]) # ¡Error! La clave "edad" no existe
Puedes evitarlo con el método .get():
print(empleado.get("edad", "No registrada")) # No registrada
.get() regresa un valor predeterminado si la clave no existe. No truena el programa.
Error 3: Confundir corchetes con llaves
Las listas usan []. Los diccionarios usan {} para crearse y [] para leer valores. Es confuso al principio. Con práctica se vuelve automático.
Error 4: Olvidar las comillas en las claves
# MAL
print(empleado[nombre]) # Python busca una variable llamada nombre
# BIEN
print(empleado["nombre"]) # Python busca la clave "nombre"
Las claves de texto siempre van entre comillas.
Cuándo usar lista y cuándo usar diccionario
| Situación | Usa esto |
|---|---|
| Tienes una colección de valores del mismo tipo | Lista |
| Quieres acceder por nombre, no por posición | Diccionario |
| Necesitas guardar varias propiedades de un objeto | Diccionario |
| Quieres recorrer elementos en orden | Lista |
| Tienes varios objetos con las mismas propiedades | Lista de diccionarios |
Lo que aprendiste hoy
Empezaste esta lección preguntándote cómo guardar muchos datos sin volverse loco con variables sueltas. Ahora tienes dos herramientas poderosas.
Rodrigo organizó rutas de reparto. Mariana controló turnos de producción. Diego calculó el total de su startup. Los tres usaron listas y diccionarios. Tú puedes hacer lo mismo.
En la siguiente lección cierras el curso con un proyecto integrador que une todo lo que aprendiste: variables, condiciones, ciclos, funciones, listas y diccionarios.