Cómo usar un bucle while en Python
El ciclo while de Python puede resultar confuso para los principiantes. Sin embargo, una vez que comprenda el concepto de bucle, se dará cuenta de que el "while" antes del "bucle" de Python es una mera declaración de condición.
Echemos un vistazo al bucle while de Python y cómo se puede utilizar para resolver problemas de programación.
¿Dónde se puede utilizar un bucle while?
Una condición particular sigue un bucle while. Determina lo que sucede dentro del bucle. Mientras esa condición permanece Verdadera , las expresiones dentro del ciclo continúan ejecutándose.
Generalmente, el bucle viene a la mente cuando necesita trabajar con cada elemento de una lista o una matriz en programación. Un bucle mientras que también mantiene a ejecutarse hasta que una declaración dentro del bucle detiene.
Un buen ejemplo sería una actividad de inspección para identificar animales enfermos en un rebaño de ovejas. Se puede atribuir esto al bucle mientras estableciendo el límite de temperatura a 37 grados. Cualquier valor por encima de este significa que una oveja está enferma.
Para hacer esta declaración en un bucle while, se puede decir: "mientras que la temperatura de una oveja está por encima de 37 grados, imprimir poco saludable."
Como era de esperar, la instrucción while imprime el resultado "insalubre" continuamente mientras la condición establecida permanezca Verdadera .
Cómo usar los bucles while de Python: en la práctica
Como se indicó anteriormente, un ciclo while se ejecuta indefinidamente si no hay condiciones establecidas que lo detengan. Aquí hay un ejemplo de un bucle while indefinido:
while 3 < 5:
print("It's less than 5")
La condición para el bucle, mientras que en el código anterior es 3 <5.
Ahora vamos a echar un vistazo al código de bucle mientras que para el ejemplo inspección de la manada de la sección anterior:
StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print("unhealthy")
else:
print("healthy")
En el fragmento de código anterior, el límite de temperatura es 37. La variable sheep_temp almacena la temperatura de cada oveja. El bucle mientras mantiene la salida "no saludable" siempre y cuando la temperatura está por encima de 37; esta es la condición para ejecutar el ciclo en este caso. Si cambia sheep_temp a un valor menor que 37, ejecuta la instrucción else .
Sin embargo, el uso de un bucle while para resolver el problema anterior es demasiado primitiva y no escalable. Esto se debe a que debe cambiar manualmente el valor de la variable sheep_temp cada vez que necesite probar una oveja. Significa que es difícil operarlo en una matriz. La solución a eso está más allá del alcance de este artículo.
No obstante, ese ejemplo debería darle algunas ideas sobre lo que hace una instrucción while en un bucle de Python.
Para evitar que el código se ejecute de forma continua, puede introducir una declaración de interrupción en el código de ejemplo de esta manera:
StdTemperature = 37
sheep_temp = 38
while sheep_temp > StdTemperature:
print("unhealthy")
break
else:
print("healthy")
Veamos otro caso de uso de un bucle while mediante la creación de una lista de los números entre 1 y 10:
a = 11
b = 1
while b < a:
a -= 1
print(a)
El bloque de código anterior cuenta desde el número 10 hasta 1. También puede interpretar la declaración de la siguiente manera: "mientras uno es menor que once, siga restando uno de cualquier número anterior y dé su resultado como el siguiente recuento". Funciona eliminando uno de un número anterior cada vez que ejecuta la instrucción while .
También se puede modificar el tiempo de bucle por encima de multiplicar cada salida por 2:
a = 11
b = 1
while b < a:
a -= 1
print(a, "x", "2", "=", a*2)
Se puede utilizar una expresión booleana con un bucle while también. Eche un vistazo al fragmento de código a continuación para ver cómo funciona esto:
a = 10
b = 2
while b < 10:
b+=1
print(b)
if b==8:
print(a)
break
El código anterior da una salida que cuenta todos los demás enteros del 3 al 10 sin incluir el número 9. La expresión de ruptura garantiza que el ciclo deje de contar una vez que llega a 10. Para comprender su relevancia, puede eliminar la declaración de ruptura para ver cómo viene a través.
Sin embargo, en lugar de usar un descanso , puede usar la expresión continue para obtener el mismo resultado. Para comprender cómo funciona, intente comparar el fragmento de código anterior con el siguiente:
a = 10
b = 2
while b < 10:
b+=1
if b==9:
continue
print(b)
En lugar de controlar la salida con un descanso , el código anterior le indica a su programa que continúe el conteo sin considerar 9.
También puede modificar el ciclo while anterior para generar todos los números pares entre 1 y 10:
a = 10
b = 1
while b <= 10:
b+=1
if b%2==0:
print(b)
Nota: Si no desea ejecutar estos ejemplos con el IDLE integrado de Python, también puede usar Jupyter Notebook , pero debe crear y activar un entorno virtual de Python para usar esa opción.
¿Un ciclo while tiene limitaciones en la práctica?
Mientras que los que resuelve problemas particulares en los acontecimientos de la vida real, un bucle while en Python tiene algunas limitaciones cuando se trata de una colección de matrices.
En la práctica, a diferencia de bucle, un bucle while no ofrece especificidad en un estado de flujo de control. Sin embargo, un bucle while tiene sus aplicaciones, así, por lo que tener una idea de cómo utilizarlo en sus programas es necesario.