Cuando empiezas a aprender Python, una de las primeras señales de avance es dejar de copiar el mismo código muchas veces.
Ahí aparecen los bucles.
Un bucle permite repetir instrucciones de forma automática. En lugar de escribir varias veces la misma línea, le dices a Python qué debe repetir y bajo qué regla debe hacerlo.
Primer ejemplo con for
for numero in range(1, 6):
print(numero)
Este código muestra los números del 1 al 5.
La parte importante está aquí:
range(1, 6)
En Python, el valor final de range() funciona como límite, pero no se incluye. Por eso range(1, 6) llega hasta 5.
for también puede recorrer datos
Un for no solo sirve para contar. También puede recorrer elementos uno por uno:
tareas = ["comprar", "empacar", "enviar"]
for tarea in tareas:
print("Pendiente:", tarea)
Esto es útil cuando tienes datos parecidos: tareas, productos, nombres, mensajes o pedidos.
¿Y qué hace while?
while repite un bloque mientras una condición siga siendo verdadera.
contador = 1
while contador <= 5:
print(contador)
contador = contador + 1
En este caso, el contador empieza en 1 y aumenta en cada vuelta. Cuando llega a un valor mayor que 5, la condición deja de cumplirse y el bucle termina.
Regla sencilla
Usa for cuando tienes una secuencia o una cantidad clara de repeticiones.
Usa while cuando la repetición depende de una condición.
Errores comunes
Al empezar con bucles, estos errores son normales:
- olvidar los dos puntos
: - no indentar el bloque
- pensar que
range(1, 6)llega hasta 6 - no actualizar el contador en un
while - copiar manualmente código que podría ir dentro de un bucle
Mini reto
Crea una lista de pedidos y recórrela con for:
pedidos = ["Pedido 1", "Pedido 2", "Pedido 3"]
for pedido in pedidos:
print("Revisando:", pedido)
print("Todos los pedidos fueron revisados")
Guía completa
Publiqué una guía más visual y paso a paso en TuCodigoCotidiano:
La idea es que una persona principiante pueda pasar de:
“Estoy copiando el mismo código varias veces”
a:
“Puedo usar un bucle para repetir una tarea automáticamente”.

Top comments (0)