while bucle en Python. Cómo funciona, ejemplos de uso

Los bucles son una de las principales herramientas de cualquier lenguaje. Hay dos bucles básicos en Python, uno de los cuales es while. Considérelo, y también para una mejor comprensión de la imagen, uno más. De hecho, en comparación con algo similar, es mucho más fácil entender cualquier material, ¿no es así?

El concepto de un ciclo.

Se necesita un bucle cuando una determinada acción debe realizarse varias veces. Esto es muy simplista, porque en realidad la gama de aplicaciones de los ciclos es mucho más amplia. Hay dos tipos principales de bucles en Python: for y while. El más popular es para.

Además de acciones específicas, puede hacer un bucle de diferentes fragmentos de código hasta cierto punto. Esto puede ser un cierto número de veces, o mientras una condición particular sea verdadera.

Antes de comenzar a comprender los tipos de bucles y mientras, en particular, aún debemos comprender qué es la iteración. Esta es una repetición de una acción o secuencia de acciones durante el ciclo actual dentro de la ejecución de la aplicación actual.

ciclo para

Nuestro ciclo For no es un contador, como en muchos otros lenguajes. Su tarea es enumerar una cierta secuencia de valores. ¿Qué significa esto? Digamos que tenemos una lista de elementos. Primero, el ciclo toma el primero, segundo, tercero y así sucesivamente.

La ventaja de este bucle en Python es que no necesita determinar el índice del elemento para saber cuándo salir del bucle. Todo se hará automáticamente.

>>> pico = [10, 40, 20, 30]

>>> para elemento en spisok:

… imprimir(elemento + 2)

...

12

42

22

32

En nuestro ejemplo, usamos la variable elementos después del comando for. En general, el nombre puede ser cualquier cosa. Por ejemplo, una designación popular es i. Y con cada iteración, a esta variable se le asignará un objeto específico de la lista, al que llamamos la palabra apropiada.

En nuestro caso, la lista es una secuencia de números 10,40,20,30. En cada iteración, el valor correspondiente aparece en la variable. Por ejemplo, tan pronto como comienza el ciclo, la variable elementos se asigna el valor 10. En la siguiente iteración, el diez se convierte en el número 40, la tercera vez se convierte en el número 20 y finalmente, en la última iteración del ciclo, se convierte en 30.

La señal del final del ciclo es el final de los elementos de la lista.

Si necesita que el ciclo realice una enumeración clásica de valores, como en otros lenguajes de programación, debe crear una lista con una secuencia de números naturales hasta el valor que necesitamos.

>>> pico = [1,2,3,4,5]

O usa la función solamente(), para determinar la longitud de la lista. Pero en este caso es mejor usar un bucle. tiempo, porque no hay necesidad de usar una variable.

Si necesita cambiar la secuencia de valores en la lista, haga un bucle para y aquí viene al rescate. Para ello, en cada iteración, a cada elemento de la lista se le debe asignar un valor adecuado.

Mientras bucle

A diferencia del ciclo para, que simplemente itera sobre los valores de la secuencia, el bucle mientras tiene mas usos El nombre de este tipo de ciclos se traduce como “todavía”. Es decir, “hasta”.

Este es un bucle universal que se encuentra en todos los lenguajes de programación. Y en cierto modo se parece a un operador condicional tejo, que realiza una comprobación para ver si se cumple una determinada condición. Solo en contraste con el operador condicional, mientras realiza la verificación en cada iteración, no solo una vez. Y solo si la condición es falsa, el bucle finaliza y se ejecuta el comando que le sigue. En palabras simples, si la situación en la que trabaja ya no es válida.

Si dibujamos un ciclo mientras de manera simplista, esto se hace utilizando dicho esquema.while bucle en Python. Cómo funciona, ejemplos de uso

La rama principal del programa (que se ejecuta fuera del bucle) se representa en esta figura con rectángulos azules. La turquesa representa el cuerpo del ciclo. A su vez, un rombo es una condición que se comprueba en cada iteración.

Cycle mientras puede resultar en dos excepciones:

  1. Si al comienzo del ciclo la expresión lógica no devuelve verdadero, entonces simplemente no comienza, habiéndose completado antes de la ejecución. En general, esta situación es normal, porque bajo ciertas circunstancias, la aplicación puede no prever la presencia de expresiones en el cuerpo del bucle.
  2. Si la expresión siempre es verdadera, esto puede conducir a un bucle. Es decir, al interminable desplazamiento del ciclo. Por lo tanto, en dichos programas, siempre debe haber una declaración de salida del ciclo o programa. Sin embargo, esta situación se presentará si el programa pudo determinar la verdad o falsedad de una condición en particular. Si no lo hizo, se devuelve un error con la finalización del programa. O puede manejar el error y luego, si ocurre, se ejecutará cierto código.

Puede haber una gran cantidad de opciones sobre cómo manejar un error. Por ejemplo, el programa puede pedirle al usuario que ingrese los datos correctamente. Entonces, si una persona indicó un número negativo donde solo puede ser positivo, o ingresó letras donde solo deberían haber números, el programa puede informarlo.

Ejemplos de bucle while

Aquí hay un ejemplo de código que maneja un error en este caso.

n = entrada ("Ingrese un número entero:") 

while tipo(n) != int:

    Tratar:

        norte = entero(norte)

    excepto ValueError:

        imprimir ("¡Entrada incorrecta!")

        n = entrada ("Ingrese un número entero:") 

si n % 2 == 0:

    imprimir ("Par")

más:

    imprimir ("Impar")

Tenga en cuenta que Python usa dos puntos para declarar construcciones de código complejas.

En el código anterior, definimos como condición que debemos verificar si el número es un número entero. En caso afirmativo, se devuelve falso. Si no, entonces cierto.

En la segunda parte del código, donde se usa el operador if, usamos el operador % para encontrar el resto después de la operación de división. El siguiente paso es comprobar si el número es par. Si no, entonces el resto es uno en este caso. En consecuencia, el número es impar. 

En términos simples, el código anterior primero verifica si la cadena ingresada por el usuario es un número. En caso afirmativo, se realiza una segunda verificación para ver si queda un resto de la división por dos. Pero el segundo bloque no se ejecutará hasta que el valor introducido por el usuario sea numérico.

Es decir, el bucle se ejecutará regularmente hasta que se produzca la condición. En esta situación, funciona así. 

Es decir, puedes pasar de lo contrario: repetir una acción determinada hasta que el evento se vuelva falso.

análisis de código

Ahora veamos con más detalle cómo funciona este código. Para ello, lo analizaremos paso a paso.

  1. Primero, el usuario ingresa una cadena, que es aceptada por la variable n. 
  2. Usando un bucle mientras se comprueba el tipo de esta variable. En la primera entrada, no es igual. int. Por lo tanto, como resultado de la prueba, se encuentra que esta condición es verdadera. Por lo tanto, se ingresa el cuerpo del bucle.
  3. Con la ayuda de un operador. try estamos tratando de convertir una cadena en un número. Si se hace esto, no se produce ningún error. En consecuencia, no hay necesidad de procesarlo. Por lo tanto, el intérprete regresa al comienzo del bucle y, según los resultados de la verificación, resulta que se ha convertido en un número entero. Así que vamos al paso 7
  4. Si la conversión no tuvo éxito, se lanza un ValueError. En este caso, el flujo del programa se envía al controlador de excepción.
  5. El usuario ingresa un nuevo valor, que se asigna a la variable n.
  6. El intérprete vuelve al paso 2 y vuelve a comprobar. Si es un valor entero, vaya al paso 7. De lo contrario, se intenta la conversión nuevamente de acuerdo con el paso 3.
  7. Con la ayuda de un operador. if Determina si hay un residuo después de dividir un número por 2. 
  8. Si no, se devuelve el texto "incluso".
  9. Si no, se devuelve el texto "impar".

Considere ahora tal ejemplo. Trate de determinar cuántas veces pasará este ciclo.

totales = 100 

i = 0

mientras yo < 5:

    n = int(entrada())

    total = total — norte

    i = i + 1 

imprimir(“Restante”, total)

La respuesta correcta es 5. Inicialmente, el valor de la variable i - cero. El intérprete comprueba si la variable es igual i 4 o menos En caso afirmativo, se devuelve el valor. verdadero, y el bucle se ejecuta en consecuencia. El valor se incrementa en uno.

Después de la primera iteración, el valor de la variable se convierte en 1. Se realiza una verificación y el programa entiende que este número es nuevamente menor que 5. En consecuencia, el cuerpo del bucle se ejecuta por segunda vez. Como los pasos son similares, el valor también aumenta en uno y la variable ahora es igual a 2.

Este valor también es inferior a cinco. Luego, el ciclo se ejecuta por tercera vez, se agrega a la variable i 1 y se le asigna el valor 3. Este es nuevamente menor que cinco. Y así llega a la sexta iteración del bucle, en la que el valor de la variable i es igual a 5 (después de todo, originalmente era cero, por lo que recordamos). En consecuencia, esta condición no pasa la prueba, y el ciclo se termina automáticamente y se lleva a cabo la transición al siguiente paso, que está fuera de él (o la terminación del programa, si no se proporcionan los siguientes pasos).

El ciclo también puede ocurrir en la dirección opuesta. Aquí hay un ejemplo de código donde, con cada iteración subsiguiente, se resta uno del valor actual de la variable. 

totales = 100 

mientras total > 0:

    n = int(entrada())

    total = total — norte 

imprimir(“Recurso agotado”)

¡Intenta adivinar qué hace este programa! Imagina que en una variable total se almacena información sobre el recurso del programa. Cada vez que el intérprete comprueba si el recurso existe. De lo contrario, se muestra el texto "Recurso agotado" y el programa se cierra. Y con cada iteración del bucle, el recurso disminuye en la cantidad que especifica el usuario.

Y ahora deberes. Intente cambiar el código anterior para que la variable no pueda volverse físicamente negativa. 

4 Comentarios

  1. si código ahaan usoo gudbi

Deje un comentario