Cortar el bucle o saltar una vuelta
break sale del bucle en el acto, aunque la pregunta siga en True. continue no sale. Salta las líneas que tiene debajo, solo en esta vuelta, y el bucle vuelve a preguntar. La página de while esperaba a que la pregunta fuera False. print("done") está a la altura de while, así que queda fuera: corre una vez después de break, y también cuando el bucle termina por su cuenta.
cups empieza en 0 y la pregunta es cups < 5. Cada vuelta escribe el número primero. Cuando el número es 2, corre break. cups = cups + 1 está debajo de break, así que en esa vuelta no corre. 2 sigue siendo menor que 5. La pregunta no ha fallado. El bucle, aun así, se acabó.
cups = 0
while cups < 5:
print(cups)
if cups == 2:
break
cups = cups + 1
print("done")
Ves 0, luego 1, luego 2, luego done. No hay 3 ni 4. cups guarda 2. Ese 2 se escribió, y el bucle se fue antes de que el número avanzara.
Saltar una vuelta y quedarse en el bucle
continue solo es seguro si el número avanza antes del salto. Si no, el valor que quieres saltar se queda quieto, la pregunta sigue en True y el bucle no termina. Aquí la primera línea de dentro suma 1. Si el número ya es 2, continue salta el print de esta vuelta. El bucle vuelve a cups < 4. La vuelta siguiente deja el número en 3, y 3 se escribe.
cups = 0
while cups < 4:
cups = cups + 1
if cups == 2:
continue
print(cups)
print("done")
Ves 1, luego 3, luego 4, luego done. Falta el 2. done está porque continue no abandonó el bucle. La pregunta falló más tarde, sola, y la línea de fuera corrió una vez.
El mismo break, ahora antes de print
Pon break encima de print. La vuelta que llega a 2 se va antes de escribir nada. done sigue corriendo, porque está a la altura de while.
cups = 0
while cups < 5:
if cups == 2:
break
print(cups)
cups = cups + 1
print("done")
Ves 0, luego 1, luego done. cups vuelve a ser 2, pero esta vez ese 2 no se escribió. Los dos programas solo se distinguen por el sitio de break.
Si escribes continue encima de cups = cups + 1, el salto puede dejar el número clavado. cups se queda en el valor que ibas a saltar, la pregunta sigue en True y el bucle no termina. No ejecutes ese orden. Primero mueve el número. Después decide si esta vuelta salta las líneas bajo continue.
break y continue van en minúscula. Break o Continue con mayúscula es un nombre que Python no conoce, y el programa se detiene. La página siguiente numera cada elemento que recorre y empareja dos listas. No usa estas dos palabras.
Calcúlalo antes de ejecutarlo
- El primer programa escribe y luego hace break cuando cups es 2. ¿Qué aparece, y qué guarda cups después?
- El programa de continue suma 1 antes de saltar. ¿Qué números se escriben, y sale done?
- El tercer programa sale antes de print. ¿Está el 2 en la pantalla?
- Subes continue por encima de cups = cups + 1 y el salto sigue siendo cierto. ¿Termina el bucle?
Donde cambia el resultado
- Seguir esperando que falle cups < 5 después de haber escrito break
- Esperar 3 y 4 cuando break ya corrió en 2
- Poner continue antes de que el número avance
- Contar como ejecutada una línea que está bajo break
- Escribir Break o Continue con mayúscula
En una lectura
break sale al momento. La pregunta de while puede seguir en True. Una línea a la altura de while sí corre, y una línea bajo break no.
Si break está después de print, ves 0, 1, 2 y luego done, y cups se queda en 2. Si break está antes de print, ves 0, 1 y luego done, y cups sigue siendo 2.
continue salta solo las líneas de debajo, en esta vuelta. Si el número avanzó primero, ves 1, 3, 4 y luego done, y el 2 no está.
Si el número no avanza, continue puede dejar la pregunta en True y el bucle no termina.
La página siguiente numera cada elemento y empareja dos listas.
🧠 Pon a Prueba tu Conocimiento
Pon a Prueba tu Conocimiento
Ponte a prueba con este cuestionario interactivo y descubre qué tan bien entiendes el tema
📝 Instrucciones
- Lee cada pregunta cuidadosamente
- Selecciona la mejor respuesta para cada pregunta
- Puedes repetir el quiz tantas veces como quieras
- Tu progreso se mostrará en la parte superior