Cargando...

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ó.

Salir después de escribir 2

python
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.

Saltar el 2 y seguir

python
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.

Salir antes de escribir 2

python
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

  1. El primer programa escribe y luego hace break cuando cups es 2. ¿Qué aparece, y qué guarda cups después?
  2. El programa de continue suma 1 antes de saltar. ¿Qué números se escriben, y sale done?
  3. El tercer programa sale antes de print. ¿Está el 2 en la pantalla?
  4. 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

Listo para Empezar

Pon a Prueba tu Conocimiento

Ponte a prueba con este cuestionario interactivo y descubre qué tan bien entiendes el tema

❓
4
Preguntas
🎯
70%
Para Aprobar
♾️
∞
Tiempo
🔄
∞
Intentos

📝 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