Un bucle while repite un bloque de código
mientras una condición sea verdadera 🌀
Se usa cuando no sabemos cuántas veces se repetirá la tarea,
pero sí tenemos una condición de parada.
⬇️ Salida:
100
50
25
12
6
3
1
💬 El bucle se repite mientras
numero > 0. La operación//=divide el número entre 2 en cada paso.
1️⃣ Python evalúa la condición numero > 0.
2️⃣ Si es True, ejecuta el bloque indentado.
3️⃣ Luego vuelve a evaluar la condición.
4️⃣ El ciclo continúa hasta que la condición sea False.
⚙️ Si nunca cambia, el bucle sería infinito.
| Característica | for |
while |
|---|---|---|
| Itera sobre | un objeto iterable (rango, lista, etc.) | una condición lógica |
| Duración | conocida | desconocida |
| Riesgo de bucle infinito | bajo | alto si olvidas actualizar la condición |
Imaginemos un pequeño programa interactivo. Queremos que el usuario escriba comandos hasta que decida salir 🖥️
💡 Este programa sigue pidiendo texto hasta que el usuario escriba
"salir".
¿Qué ocurre si el usuario escribe "SALIR" en mayúsculas? 🤔 El programa no termina, porque "salir" != "SALIR".
Podemos solucionarlo con el método .lower() 👇
⬇️ Salida esperada:
👉 Escribe un comando: hola
Eco: hola
👉 Escribe un comando: SALIR
(Programa finalizado)
💬
.lower()convierte cualquier texto a minúsculas, garantizando que la comparación funcione correctamente.
| Elemento | Significado |
|---|---|
while |
Ejecuta un bloque mientras la condición sea verdadera |
break |
Detiene el bucle inmediatamente |
.lower() |
Convierte texto a minúsculas |
| Condición de salida | Debe cambiar dentro del bucle para evitar loops infinitos |