Volver a la lista

Bucles de Python: for, while, break

Aprende los bucles `for` y `while`, así como las instrucciones `break` y `continue`, en Python mediante ejemplos prácticos.

Principiante
|
7min
|
Verificado (2026-07)
Progreso0/18 (0%)

Bucles en Python — for, while, break

Al finalizar este tema

Podrás crear bucles con for y while, y controlar el flujo del programa con break y continue.


Bucle for — Repetición un número determinado de veces

python
# Recorrer una lista
fruits = ["manzana", "plátano", "uva"]
for fruit in fruits:
print(fruit)
# manzana
# plátano
# uva

for variable in iterable: — Extrae y procesa uno por uno elementos de listas, cadenas de texto, rangos, etc.

range() — Generación de un rango numérico

python
# range(fin): desde 0 hasta fin-1
for i in range(5):
print(i)
# 0, 1, 2, 3, 4
# range(inicio, fin)
for i in range(2, 6):
print(i)
# 2, 3, 4, 5
# range(inicio, fin, paso)
for i in range(0, 10, 2):
print(i)
# 0, 2, 4, 6, 8

range(5) genera valores del 0 al 4 (excluyendo el 5). En casi todos los lenguajes de programación, es una convención que el "límite superior sea excluyente".


Bucle while — repite mientras la condición sea verdadera

python
count = 0
while count < 5:
print(f"count = {count}")
count += 1
# count = 0
# count = 1
# count = 2
# count = 3
# count = 4

for es adecuado cuando "se sabe cuántas veces se repetirá", mientras que while es adecuado cuando "no se sabe cuándo terminará".

Precaución con bucles infinitos

python
# ❌ Así nunca se detendrá
count = 0
while count < 5:
print(count)
# Si olvidas count += 1 → ¡bucle infinito!
# Bucle infinito intencional (se usa en servidores, juegos, etc.)
while True:
command = input("> ")
if command == "quit":
break
print(f"Entrada: {command}")

Al usar un bucle while, siempre verifique "¿cuándo termina este bucle?".


break y continue

break — salida del bucle

python
# Termina en cuanto encuentra el 3
for i in range(10):
if i == 3:
print("¡Encontrado!")
break
print(i)
# 0
# 1
# 2
# ¡Encontrado!

break sale inmediatamente del bucle más cercano.

continue — omite solo esta iteración

python
# Omite los números pares
for i in range(6):
if i % 2 == 0:
continue
print(i)
# 1
# 3
# 5

continue no termina el bucle; omite solo esta iteración y pasa a la siguiente.


Bucles anidados

python
# Tablas de multiplicar del 2 y del 3
for dan in range(2, 4):
print(f"--- Tabla del {dan} ---")
for i in range(1, 10):
print(f"{dan} x {i} = {dan * i}")

Es posible anidar bucles dentro de otros bucles. Cada vez que el bucle exterior completa una iteración, el bucle interior se ejecuta completamente.


enumerate — índice y valor simultáneamente

python
names = ["Ana", "Luis", "Marta"]
# Cuando se necesita el índice
for i, name in enumerate(names):
print(f"{i}: {name}")
# 0: Ana
# 1: Luis
# 2: Marta

enumerate() genera pares (índice, valor). Es más limpio que for i in range(len(names)).


Criterios para elegir entre for y while

SituaciónRecomendado
Recorrido de listas/rangosfor
Número de iteraciones fijofor + range()
Iteración basada en condiciónwhile
Espera de entrada del usuariowhile True + break

En la mayoría de los casos, se usará for. Se utiliza while cuando "la condición de finalización depende del estado y no de los datos".


💬 Preguntas y comentarios

0 comentarios

Puedes publicar sin iniciar sesión. Los comentarios de invitados no pueden editarse ni eliminarse después.

0/2000

Cargando...