El bucle for en Python te permite recorrer secuencias como cadenas de texto, listas, tuplas, diccionarios y rangos numéricos. Si estás aprendiendo programación, dominar esta estructura es clave para iterar datos y controlar el flujo de tu código sin escribir instrucciones repetitivas.
¿Qué hace el bucle for y cómo se escribe?
El for actúa como un iterador: toma elementos individuales dentro de una estructura más grande y ejecuta una instrucción por cada uno. La sintaxis básica nombra una variable que representa cada unidad de la secuencia.
Por ejemplo, si declaras la variable palabra = "Python" y escribes for letra in palabra: print(letra), la terminal imprimirá P, Y, T, H, O, N en líneas separadas. Cada vuelta del bucle toma una letra distinta hasta agotar la cadena.
¿Para qué sirve el bucle for en Python? Sirve para recorrer cualquier secuencia iterable (texto, listas, tuplas, diccionarios, rangos) y ejecutar instrucciones sobre cada elemento sin repetir código manualmente.
¿Cómo recorrer listas con for y controlar el flujo?
La misma lógica aplica para listas. Si tienes frutas = ["manzana", "naranja", "kiwi"], basta con escribir for fruta in frutas: print(fruta) para imprimir cada ítem. El nombre en singular representa cada elemento, y el nombre en plural es la lista completa.
¿Cuándo usar break y continue dentro de un for?
Dentro del bucle puedes alterar su comportamiento con dos palabras clave que ya conocías de while:
- break: rompe el bucle por completo. Si añades
if fruta == "naranja": break, solo se imprimirá manzana, porque al llegar a naranja el bucle termina.
- continue: saltea esa iteración y sigue con la siguiente. Con la misma condición, se imprimirán manzana y kiwi, omitiendo naranja.
- else: se ejecuta una vez que el bucle finaliza de forma natural. Es útil para mostrar mensajes como ya hemos terminado el bucle for.
Estas tres herramientas te dan control fino sobre cuándo detener, saltar o cerrar la iteración.
¿Cómo funciona range y los bucles anidados?
La función range() genera secuencias numéricas y es probablemente la compañera más usada del for. Su comportamiento tiene tres formas que conviene memorizar.
¿Qué números incluye range en Python?
El range empieza en cero por defecto y termina en el número indicado sin incluirlo. Estas son las variantes:
range(10): produce del 0 al 9.
range(3, 5): produce 3 y 4, porque arranca en el primer número y excluye el segundo.
range(0, 10, 2): produce 0, 2, 4, 6, 8, saltando de dos en dos sin incluir el 10.
Si cambias el límite a 11 con paso de 2, entonces sí aparecerá el 10. La regla es siempre la misma: el número final del rango queda fuera.
¿Range incluye el último número? No. range siempre excluye el valor final. Si necesitas incluirlo, suma uno al límite superior.
¿Qué es un bucle for anidado?
Un bucle anidado es un for dentro de otro for. Sirve cuando necesitas combinar elementos de dos secuencias. Por ejemplo, con la lista frutas y otra lista adjetivos = ["rica", "saludable"]:
python
for adjetivo in adjetivos:
for fruta in frutas:
print(fruta, adjetivo)
El resultado es: manzana rica, naranja rica, kiwi rica, manzana saludable, naranja saludable, kiwi saludable. El bucle externo da una vuelta y el interno completa todas las suyas antes de que el externo avance. Por eso ves tres frutas con rica y luego tres con saludable.
Aquí va un desafío: ¿cómo cambiarías el código para que la salida sea manzana rica, manzana saludable, naranja rica, naranja saludable, kiwi rica, kiwi saludable? Pista: el orden de los bucles importa. Déjalo en los comentarios.
¿Qué hace pass dentro de un bucle for?
A veces escribes la estructura de un bucle pero todavía no sabes qué instrucción colocar dentro. Si dejas el bloque vacío, Python lanza error. La solución es la palabra pass.
Con for i in range(10): pass, no se imprime nada, pero el programa no falla. Es un placeholder que mantiene la sintaxis válida hasta que definas la lógica real. Funciona igual que en if y en while.
Con esto cierras los dos bucles que ofrece Python: el while para repetir mientras se cumpla una condición, y el for para recorrer secuencias. Combinados con if, break, continue, else y pass, te dan control total sobre el flujo de tu programa. ¿Qué resultado te dio el desafío de las frutas? Cuéntalo abajo.