Introducción a las listas en Python con Claude Code
Hasta ahora, cada caja que hemos usado en Python guardaba un solo dato: un nombre, una edad, una nota. Pero ¿y si necesitas guardar cinco canciones, no una? La respuesta no es crear cinco cajas sueltas llamadas canción1, canción2, canción3… es usar una lista: una fila de cajas numeradas, todas con el mismo nombre por fuera. Aquí tienes el proceso completo, paso a paso, para que lo repitas tú mismo con Claude Code.
El problema que resuelve
Las listas son, con diferencia, uno de los conceptos con los que más se lía quien empieza a programar. La razón casi siempre es la misma: en Python (y en la mayoría de lenguajes) las posiciones de una lista no empiezan a contar en 1, sino en 0 — así que si tu lista tiene 5 elementos, van de la posición 0 a la posición 4, y la posición 5 ya no existe. Entender esto desde el principio, con un ejemplo sencillo y sin mezclarlo todavía con bucles, evita muchos dolores de cabeza más adelante.
Lo que necesitas antes de empezar
Claude Code instalado con el modo plan activado, un editor para ejecutar el archivo .py (PyCharm, Thonny, o el que uses en clase), y haber visto ya variables, condicionales simples y condicionales múltiples — no hace falta saber nada de bucles todavía, ese concepto llega en una lección posterior.
Paso 1 — Piensa en una lista como una fila de cajas numeradas
Antes de pedir nada a Claude Code, ten clara la imagen: una variable normal es una caja con una etiqueta que guarda un dato. Una lista es una fila de cajas pegadas, todas bajo un único nombre, donde cada caja tiene su propia posición. Lo importante, y lo que más cuesta al principio, es que esa fila empieza a contar en 0, no en 1.
Paso 2 — Pide el programa con el modo plan activado
Activa el modo plan y pide el ejercicio describiendo qué quieres, no cómo hacerlo:
“Quiero un programa en Python que guarde una lista con los títulos de mis 5 canciones favoritas, y que muestre por pantalla cuál es la primera de la lista y cuál es la última.”
Paso 3 — Lee el plan pensando en las posiciones, no solo en el resultado
Antes de aprobar el plan, hazte dos preguntas — puedes hacérselas también directamente a Claude Code:
- ¿Por qué la primera canción está en la posición 0, y no en la 1? Es una convención del lenguaje, no una decisión de este programa en concreto: casi todos los lenguajes de programación empiezan a contar las listas en 0.
- Si hay 5 canciones, ¿en qué posición está la última? La respuesta es la posición 4, no la 5 — con 5 elementos, las posiciones van de la 0 a la 4. Esta es la cuenta que más líos da al principio, así que merece la pena pararse en ella antes de seguir.
Paso 4 — Aprueba el plan y pruébalo
Aprueba el plan (Claude Code te pedirá permiso antes de crear el archivo, como siempre) y ejecuta el programa. Deberías ver en pantalla la primera canción de tu lista y la última, correctamente identificadas.
Paso 5 — Rómpelo a propósito para aprender a leer el error
Este es el paso que de verdad fija el concepto. Pide a Claude Code que añada una línea que muestre la canción en la posición 10 (que no existe en una lista de 5 elementos) y ejecuta el programa de nuevo. Si te pasa esto, no te asustes: verás un error llamado IndexError, y significa exactamente lo que dice — has pedido una posición que está fuera de la lista. Es el error más común de quien empieza con listas, y saber leerlo es tan importante como saber escribir la lista en primer lugar, porque te va a volver a aparecer muchas veces mientras aprendes.
Avisos
Prueba siempre tu propia lista con al menos tres preguntas antes de darla por entendida: qué hay en la posición 0, qué hay en la última posición, y qué pasa si pides una posición que no existe. No pases a mezclar listas con bucles hasta que estas tres preguntas te salgan sin pensar.
Idea para llevarse a casa
Una lista es una fila de cajas numeradas que empieza a contar en 0. En cuanto necesites guardar varios datos del mismo tipo — canciones, notas, nombres — en vez de crear una caja suelta para cada uno, esa es la señal de que hace falta una lista.

El gancho (0:00-0:25)
“Hasta ahora, cada caja de las que hemos usado guardaba un solo dato: un nombre, una edad, una nota. Pero ¿y si necesitáis guardar cinco canciones, no una? ¿Vais a crear cinco cajas sueltas, canción1, canción2, canción3…? Hay una forma mucho mejor, y hoy la aprendemos: una lista es una fila de cajas numeradas, todas con el mismo nombre por fuera.”
Antes de grabar (esto no sale en el vídeo, pero hay que tenerlo listo)
- La app de Claude para escritorio instalada, con la sesión ya iniciada, modo plan activado.
- El editor que uses en clase (PyCharm, Thonny, o el que corresponda) abierto en segundo plano.
- La misma carpeta de trabajo de la serie, con las lecciones anteriores ya dentro.
- Ejercicio decidido de antemano: una lista con los títulos de 5 canciones favoritas, mostrar la primera, la última, y qué pasa al pedir una posición que no existe.
- Tener decidida de antemano la lista real que vas a usar en la grabación (5 títulos concretos, no genéricos tipo “canción 1”) — cuanto más real suene, mejor engancha, y mejor si son canciones que el propio grupo conoce.
- Tener clarísimo tú mismo, antes de grabar, que la primera posición de una lista en Python es la 0, no la 1, y que en una lista de 5 elementos la última posición es la 4 — es el punto que más veces hay que remarcar en el vídeo sin que canse.
Bloque 1 — De una caja a una fila de cajas (0:25-1:00)
En pantalla: la imagen de la Lección 1 (una caja con etiqueta) y al lado una fila de cajas pegadas, numeradas 0, 1, 2, 3, 4 debajo, con un único nombre por encima de toda la fila. Comentario para cámara: “hasta ahora una variable guardaba un dato. Una lista guarda varios datos, uno detrás de otro, y cada uno tiene su propia posición dentro de la fila. Lo raro al principio, y lo más importante de hoy, es que esa fila no empieza a contar en 1: empieza en 0.”
Bloque 2 — La carpeta de trabajo (1:00-1:10)
Se reutiliza la misma carpeta de la serie. Comentario breve: “seguimos en la misma carpeta de siempre — Claude ya sabe que aquí van los ejercicios.”
Bloque 3 — El pedido, con el plan activado (1:10-1:45)
Se activa el modo plan y se escribe:
PROMPT (pedido inicial):
Quiero un programa en Python que guarde una lista con los títulos de mis 5 canciones favoritas, y que muestre por pantalla cuál es la primera de la lista y cuál es la última.
Comentario mientras se escribe: “otra vez, no digo cómo hacerlo — digo qué quiero que guarde y qué quiero que muestre. Eso es lo que tiene que verse reflejado en el plan.”
Bloque 4 — Leer el plan pensando en las posiciones (1:45-2:45, momento clave del vídeo)
Aparece el plan, con la lista de 5 canciones y el acceso a la posición 0 y a la última. Comentario: “en la Lección 3 aprendimos a preguntarnos qué pasa en el caso límite antes de fiarnos de una condición. Hoy ese mismo hábito se aplica a las listas, con dos preguntas nuevas.”
- ¿Por qué la primera canción está en la posición 0, y no en la 1? — se le pregunta a Claude Code, y se comenta en voz alta: es una convención del lenguaje, no una elección de este programa en concreto — casi todos los lenguajes de programación empiezan a contar las listas en 0, así que conviene acostumbrarse ya.
- (Nueva) Si hay 5 canciones, ¿en qué posición está la última? — se pregunta a Claude Code y se comprueba que la última posición de una lista de 5 elementos es la 4, no la 5 (dependiendo de lo que proponga el plan, puede aparecer como
lista[len(lista) - 1]o directamente comolista[-1]). Comentario: “esta es la cuenta que más líos da al principio: si hay 5 elementos, van de la posición 0 a la posición 4 — la posición 5 no existe.”
Bloque 5 — Aprobar el plan y ver el archivo nacer (2:45-3:10)
Se aprueba el plan. Claude Code pide permiso antes de crear el archivo — recordatorio breve para quien no haya visto las lecciones anteriores: “nunca toca nada en vuestro ordenador sin preguntar primero.” Se aprueba el permiso y se ve el archivo .py aparecer, con la lista ya escrita y el acceso a la primera y a la última canción.
Bloque 6 — Probarlo, y después romperlo a propósito (3:10-4:10)
Se ejecuta el programa y se ve en pantalla la primera y la última canción. Después, el momento más importante del vídeo: se le pide a Claude Code que añada una línea que muestre la canción en la posición 10, que no existe, y se ejecuta. Comentario para cámara mientras aparece el error:
“Esto que veis aquí,
IndexError, es el error más común de quien empieza con listas, y no pasa nada por verlo hoy en directo — significa exactamente lo que dice: le habéis pedido una posición que está fuera de la lista. Saber leer este error es tan importante como saber escribir la lista, porque os va a aparecer muchas veces mientras aprendéis.”
Bloque 7 — El aviso honesto y el gancho para la próxima lección (4:10-4:40)
“Hoy hemos aprendido a guardar varios datos en una sola lista y a mirar posiciones concretas: la primera, la última, y qué pasa si pedimos una que no existe. Pero mirar canción por canción, una a una, no funciona si la lista tiene 100 elementos en vez de 5. La semana que viene el programa va a aprender a recorrer una lista entera él solo, sin que se lo pidamos posición por posición: eso es un bucle.”
Cierre y CTA (4:40-4:50)
“Esta es la lección 5 de la serie de fundamentos de Python: variables, cálculos, condiciones, y ahora listas, siempre leyendo el plan antes de aprobarlo. Una lista es una fila de cajas numeradas que empieza a contar en 0. Abajo tenéis los apuntes completos.”



