
Organizando el Caos
Hasta ahora hemos usado variables individuales. Pero en un negocio real, los datos vienen en grupos: catálogos de productos, listas de transacciones, nóminas de empleados. Para manejar esto, Python nos ofrece las Listas.
Una lista es una colección ordenada y mutable de elementos. «Ordenada» significa que el primer elemento siempre será el primero a menos que lo cambies. «Mutable» significa que puedes agregar, eliminar o modificar ítems después de crear la lista.
Creación y Acceso
Las listas se definen con corchetes `[]`. Para acceder a un elemento específico, usamos su índice. ¡Ojo! En programación, contamos desde cero.
# Una lista de productos más vendidos
top_ventas = ["Auriculares", "Teclado", "Monitor", "Mouse"]
# Acceder al primer elemento (Índice 0)
print(top_ventas[0]) # Salida: Auriculares
# Acceder al último elemento (Índice -1 es un truco útil)
print(top_ventas[-1]) # Salida: Mouse
# Slicing (Rebanar): Obtener un subconjunto
# Desde el índice 1 hasta (pero no incluyendo) el 3
print(top_ventas[1:3]) # Salida: ['Teclado', 'Monitor']
Gestión Dinámica: Métodos de Lista
Tu inventario cambia constantemente. Las listas tienen «métodos» (funciones integradas) para manejar estos cambios.
| Método | Descripción | Ejemplo |
|---|---|---|
| `.append(x)` | Agrega `x` al final de la lista. | `top_ventas.append(«Webcam»)` |
| `.insert(i, x)` | Inserta `x` en la posición `i`. | `top_ventas.insert(0, «Laptop»)` |
| `.remove(x)` | Elimina la primera aparición de `x`. | `top_ventas.remove(«Mouse»)` |
| `.pop(i)` | Elimina y devuelve el elemento en `i`. | `ultimo = top_ventas.pop()` |
| `.sort()` | Ordena la lista (alfabética o numéricamente). | `top_ventas.sort()` |
Aplicación Práctica: Imagina un carrito de compras. Cuando el usuario hace clic en «Comprar», usas `.append()`. Si se arrepiente, usas `.remove()`. Al finalizar, iteras con un `for` para sumar el total.
Mutabilidad: Un Poder y un Riesgo
Al ser mutables, si modificas una lista, el cambio es permanente.
precios = [10, 20, 30]
precios[0] = 15 # Actualizamos el primer precio
print(precios) # Salida: [15, 20, 30]
Esto es excelente para actualizar datos, pero debes tener cuidado de no modificar datos originales si necesitas mantener un histórico. En esos casos, es mejor crear una copia de la lista antes de modificarla.