Declaraciones de bucle while de Python
UN while La declaración de bucle en el lenguaje de programación Python ejecuta repetidamente una declaración de destino siempre que una condición dada sea verdadera.
Sintaxis
La sintaxis de un while bucle en el lenguaje de programación Python es -
while expression:
statement(s)
Aquí, statement(s)puede ser una sola declaración o un bloque de declaraciones. losconditionpuede ser cualquier expresión y verdadero es cualquier valor distinto de cero. El ciclo se repite mientras la condición es verdadera.
Cuando la condición se vuelve falsa, el control del programa pasa a la línea inmediatamente siguiente al ciclo.
En Python, todas las declaraciones sangradas por el mismo número de espacios de caracteres después de una construcción de programación se consideran parte de un solo bloque de código. Python usa la sangría como método para agrupar declaraciones.
Diagrama de flujo
Aquí, el punto clave del ciclo while es que es posible que el ciclo nunca se ejecute. Cuando se prueba la condición y el resultado es falso, se omitirá el cuerpo del bucle y se ejecutará la primera instrucción después del bucle while.
Ejemplo
#!/usr/bin/python
count = 0
while (count < 9):
print 'The count is:', count
count = count + 1
print "Good bye!"
Cuando se ejecuta el código anterior, produce el siguiente resultado:
The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!
El bloque aquí, que consta de las declaraciones de impresión e incremento, se ejecuta repetidamente hasta que el recuento no es menor que 9. Con cada iteración, se muestra el valor actual del recuento del índice y luego se incrementa en 1.
El bucle infinito
Un bucle se convierte en bucle infinito si una condición nunca se vuelve FALSA. Debe tener cuidado al usar bucles while debido a la posibilidad de que esta condición nunca se resuelva en un valor FALSO. Esto da como resultado un bucle que nunca termina. Tal bucle se llama bucle infinito.
Un bucle infinito puede ser útil en la programación cliente / servidor donde el servidor necesita ejecutarse continuamente para que los programas cliente puedan comunicarse con él cuando sea necesario.
#!/usr/bin/python
var = 1
while var == 1 : # This constructs an infinite loop
num = raw_input("Enter a number :")
print "You entered: ", num
print "Good bye!"
Cuando se ejecuta el código anterior, produce el siguiente resultado:
Enter a number :20
You entered: 20
Enter a number :29
You entered: 29
Enter a number :3
You entered: 3
Enter a number between :Traceback (most recent call last):
File "test.py", line 5, in <module>
num = raw_input("Enter a number :")
KeyboardInterrupt
El ejemplo anterior va en un bucle infinito y debe usar CTRL + C para salir del programa.
Uso de la instrucción else con While Loop
Python admite tener un else declaración asociada con una declaración de bucle.
Si el else la declaración se usa con un while bucle, el else La sentencia se ejecuta cuando la condición se vuelve falsa.
El siguiente ejemplo ilustra la combinación de una instrucción else con una instrucción while que imprime un número siempre que sea menor que 5; de lo contrario, se ejecuta la instrucción else.
#!/usr/bin/python
count = 0
while count < 5:
print count, " is less than 5"
count = count + 1
else:
print count, " is not less than 5"
Cuando se ejecuta el código anterior, produce el siguiente resultado:
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5
Suites de declaración única
Similar a if sintaxis de declaración, si su while La cláusula consta solo de una única declaración, se puede colocar en la misma línea que el encabezado while.
Aquí está la sintaxis y el ejemplo de one-line while cláusula -
#!/usr/bin/python
flag = 1
while (flag): print 'Given flag is really true!'
print "Good bye!"
Es mejor no probar el ejemplo anterior porque entra en un bucle infinito y debe presionar las teclas CTRL + C para salir.