Cómo detener un ciclo sin fin en Python: ¡una guía detallada! - Aprender Marketing
Consejos

Cómo detener un ciclo sin fin en Python: ¡una guía detallada!

La programación puede ser divertida hasta que vea el código rojo o le diga al compilador Errores gramaticalesEs más frustrante ver cómo se ejecuta el código, pero infinitamente, como un bucle infinito en Python.

una Ciclo sin fin es una secuencia iterativa continua que continúa operando indefinidamente a menos que sea perturbada por una fuente externa.

Se llama a la ejecución de un código de bloque, que dura para siempre. repetir1 anillo, en general, es una construcción de programa que implementa una iteración.

Las repeticiones repetidas pueden causar demoras y retrasos innecesarios y pueden afectar el rendimiento del sistema.

En la programación de computadoras, las iteraciones se dividen en dos categorías: iteraciones deterministas e iteraciones indeterminadas.

en repetición sin fin, sin especificar explícitamente cuántas veces se ejecutará el ciclo.

En cambio, el ciclo continúa repitiéndose, a menos que se cumplan ciertas condiciones especificadas en el cuerpo del ciclo. determinar la iteración, la repetición del ciclo está explícitamente predefinida antes de que comience el ciclo.

Ahora que hemos cubierto los conceptos básicos para comprender los bucles y las iteraciones, es importante comprender cómo se crean los operadores de bucle, especialmente Ciclo sin fin – incorporado Pitón Antes de sumergirse, cómo evitar que vuelvan a suceder.

Esta a pesar de que anillo

una a pesar de que El bucle repite parte del código mientras la condición especificada sigue siendo la misma verdaderoprimitivo a pesar de que El formato del ciclo es el siguiente:

while <condition>:
           <statement>

Esta El código anterior, llamado el cuerpo del ciclo, se ejecutará para siempre hasta que ya no sostenga el control Por lo general, consta de al menos una variable que se inicializa al principio y se puede modificar en el cuerpo del ciclo.

hecho: A diferencia de la mayoría de los lenguajes de programación, esta es la sangría Pitón Porque las expresiones que corresponden al nivel de sangría de la condición anterior se consideran parte del mismo bloque.

Antes de la ejecución, a pesar de que El bucle comprueba si la condición de inicialización es verdadera y, si no se cumple ninguna de las condiciones finales, continúa ejecutando el operador indefinidamente. Veamos un ejemplo con una condición de terminación de bucle:

n = -1
while n < 0:
           n += 1
           print(‘Infinite Loop’)

Salida

Infinite Loop (Loop Ends)

  • En el ejemplo anterior, el valor se cambió en incrementos de +1 norte.
  • el código comienza con norte Se define un entero de -1.
  • Esta a pesar de que El ciclo se ejecuta y la condición inicial se cumple porque -1 <0 (verdadero).
  • en 3rd orden, primero, valor norte Agregue a cero (-1 + 1 = 0), luego ejecute el comando de impresión.

Aquí el ciclo simplemente imprime el resultado Ciclo sin fin una vez, porque en la siguiente ejecución la condición se vuelve Incorrecto (es decir, 0 ≠ 0). Por lo tanto, el ciclo termina.

Considere otro ejemplo, pero esta vez sin terminación:

n = -1
while n < 0:
           print(‘Infinite Loop’)

Salida

Infinite Loop
Infinite Loop
Infinite Loop
…….. (Forever)

Esto es lo que sucede:

  • El código comienza con una variable definida como norte El valor inicial es -1.
  • a pesar de que Se ejecuta el ciclo y se comprueba la condición if inicial norte <1 - Esto es por supuesto cierto.
  • Esta Impresión El comando imprime la expresión entre paréntesis y reinicia el ciclo.
  • de nuevo, a pesar de que El ciclo se inicia y comprueba las condiciones que aún son válidas, ya que no detecta comandos para aumentar o disminuir en el cuerpo. Por lo tanto, norte Mantenga siempre -1 y el ciclo dura para siempre.
  • El resultado es siempre el mismo: Ciclo sin fin.

Ciclo sin fin

Hasta ahora hemos visto a pesar de que Ciclos con y sin condiciones de terminación. Pero qué pasa si queremos romper un ciclo que teóricamente nunca termina. La respuesta está en la pregunta: Descansar.

en nuestro Pitón BibliotecaSupongamos que una escena tiene un fragmento de código que funciona infinitamente si literalmente «verdadero»como se muestra en el siguiente ejemplo:

while True:
           print(‘Infinite Loop’)

Salida

Infinite Loop
Infinite Loop
Infinite Loop
…
…
…
…
Infinite Loop
KeyboardInterrupt
Traceback (most recent call last):
     File “<pyshell#2>”, line 3, in <module>
             Print(‘Infinite Loop’)

sobre Ciclo sin fin Pulse para cancelar manualmente Control + C Proporcione una interrupción externa del programa desde el teclado, una forma de terminar directamente todo el ciclo, que continuará para siempre.

líneas de salida restantes después Control + C ha sido eliminado por el comando de retorno como rotura del teclado.

Es claro del ejemplo que Ciclo sin fin Comenzó con una condición que siempre se cumple y nunca falla.

Uno puede preguntarse por qué sucede esto al escribir programas, pero en escenarios reales sucede con mayor frecuencia.

Por ejemplo, es posible que desee escribir un código para una empresa que vende sus servicios las 24 horas del día, los 7 días de la semana, sin interrupción de seamos precisos

En este caso, el servicio puede aparecer al usuario en cualquier momento, por lo que el sistema debe funcionar indefinidamente. infinitamente Indica el apagado del sistema o la terminación manual del ciclo.

Hay dos comandos predefinidos Pitón puede usarse para terminar un Ciclo sin fin Repetir demasiado pronto: Descansar y Seguir.

No hace falta decir que es fácil de conectar. Descansar comando, ya que casi se explica por sí mismo.

obviamente Seguir Los comandos pueden parecer un poco confusos en el contexto en el que se analizan, pero no lo son. Veremos cómo en los siguientes párrafos.

Esta Descansar y Seguir Pedido

Esta a pesar de que Los ciclos tienen la capacidad de tratar cada iteración como un todo. Esto significa que todo el cuerpo del operador se ejecuta después de completar un ciclo.

Pero para los casos en que se requiere la terminación Entre algún ciclo actual, es decir Descansar y Seguir El equipo está trabajando. Esto se puede ver en el siguiente diagrama:

Comandos de cancelación y reanudación de Python

número: Descansar y Seguir Comandos de Python

  • Como se puede ver en la figura, Descansar El comando finaliza todo el ciclo y el programa salta a la última declaración al final del programa.
  • Esta Seguir El comando, por otro lado, simplemente finaliza el ciclo actual y el programa vuelve a la declaración condicional original, volviendo a verificar la expresión de control para una mayor ejecución del ciclo.

Considere el siguiente código de ejemplo Descansar y Seguir utilizado para terminar un comando Ciclo sin fin existe Pitón:

Código de muestra Descansar Pedido

x = 5
while x > 0:
           x -= 1
           if x == 2:
               break
           print(x)
print(‘End of Loop’)

Salida

4
3
End of Loop

Entonces, antes de imprimir X un valor que resta 1 cada vez del valor original. Cuando X se vuelve exactamente igual a 2, interrumpe el ciclo de 5Uds una línea que no imprime el valor y salta a 7Uds línea de impresión fin de ciclo.El ejemplo anterior muestra una a pesar de que con un lazo Descansar El comando loop end Primero, el loop prueba si el valor de la variable es X mayor que cero en este caso.

El programa se reiniciará desde este punto y continuará con la misma salida.

hecho: Cabe señalar que, sin embargo, Descansar comando de terminación a Ciclo sin fin, es más apropiado aplicar la terminación sobre la base de una condición predefinida dentro del cuerpo del ciclo y no fuera del ciclo o en la parte superior.

esta es una opcion Ciclo sin fin iteración de salida Descansar Usar comandos integrados . Música pop() Característica:

x = [‘a’, ‘b’, ‘c’]
while True:
           if not x:
              break
           print(x.pop(-1))

Salida

c
b
a

En este ejemplo, a pesar de que ciclo siempre verdadero Pero la condición de terminación dentro del ciclo no lo hace desaparecer indefinidamente.

Característica . Música pop() eliminar elementos secuencialmente X e imprimirlos continuamente hasta X se vuelve vacío Este es un buen ejemplo, porque el ciclo siempre es verdadero, pero la variable de la función un, b, y °C pop para que se rompa.

también puede contener múltiples Descansar Declaraciones en un ciclo. Esta situación significa que hay muchas razones para detener el ciclo actual si uno falla, el otro se prueba, etc., como en el siguiente ejemplo:

while True:
           if <condition1>:      # First loop termination condition
              break
……
           if <condition2>:      # Second loop termination condition
              break
…...
           if <condition1>:      # Third loop termination condition
              break

Código de muestra Seguir Pedido

Como se ha mencionado más arriba, Seguir El comando se usa para terminar el ciclo, reiniciar desde el principio reevaluando la condición para decidir continuar. Descansar programalo y cambialo Seguir comando de la siguiente manera: código de muestra Seguir Pedido

x = 5
while x > 0:
           x -= 1
           if x == 2:
               continue
           print(x)
print(‘End of Loop’)

Salida

4
3
1
0
End of Loop

El ejemplo anterior muestra una a pesar de que con un lazo Seguir Comando para detener y reiniciar el ciclo X igual a 2

Primero verifique si el valor de la variable X mayor que cero en este caso Entonces, antes de imprimir X un valor que resta 1 cada vez del valor original.

Cuándo X alcanza el valor exacto de 2 e interrumpe el ciclo de 5Uds línea sin imprimir valor y volver a 2Dakota del Norte imprimir filas con valores distintos de 2 a fin de cicloEl programa se reiniciará desde este punto y continuará con la misma salida.

Advertencia: Errores de ciclo frecuentes

existe Pitón la programación es posible a pesar de que ciclo para encender otro a pesar de que Ciclo en él – llamado ciclo anidado.

Esto puede ser un poco difícil de manejar Descansar y Seguir declaración. Una advertencia es que si Descansar o Seguir los operadores están en bucles anidados, se aplican solo al anterior más cercano a pesar de que ciclo en lugar de todo el nido.

Un ejemplo puede ilustrar el concepto:

while <condition1>:
           <statement>
           <statement>
while <condition2>:
           <statement>
           <statement>
             break              # Applies to while <condition2> loop
break                           # Applies to while <condition1> loop

Como se desprende del ejemplo adjunto anterior a pesar de que primer ciclo Descansar La declaración se aplica sólo a a pesar de que ciclo mientras que el segundo Descansar La declaración se aplica sólo a a pesar de que Anillo.

otra advertencia a pesar de que Los bucles se pueden escribir en una sola línea en lugar de en varias líneas. Error de sintaxis: sintaxis invalida en la pantalla de inicio. Aunque esto funciona, solo funciona para expresiones simples. La combinación de dos expresiones compuestas en una línea puede generar un error. Además, escribir muchas expresiones en una línea también puede aumentar la complejidad de la estructura.

Por ejemplo tu fueron capaces Escribe el siguiente código:

x = 3
while x > 0: x -= 1; print(x)

Salida

2
1
0

notas no puedo escribir así si nada mas Declaraciones combinadas en una línea:

while x > 0: x -= 1; if True: print(x)

Hasta ahora hemos discutido algunas definiciones y conceptos de requisitos previos importantes, tales como ciclo, repetición, y su apariencia.

También revisamos los siguientes ejemplos. a pesar de que ciclo y Ciclo sin fin existe Pitón programación. aprendimos cómo Descansar y Seguir Las declaraciones pueden usarse para interrumpir Ciclo sin fin Esto continúa indefinidamente.

Finalmente, pensamos en algunas advertencias y causas comunes de errores en bucles anidados con código de muestra para evitarlos.

Entonces, con la ayuda de ejemplos detallados y explicaciones detalladas, aprendimos cómo detener Ciclo sin fin existe Pitón.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Botón volver arriba