Python while Loop con múltiples condiciones

Lakshay Kapoor 30 enero 2023
  1. Utilice los operadores lógicos y y o para hacer un bucle while de Python con múltiples condiciones
  2. Utilice operadores lógicos not para hacer un bucle while de Python con múltiples condiciones
Python while Loop con múltiples condiciones

el bucle while en Python es un bucle que ayuda a ejecutar el código hasta que la condición en la declaración while, es decir, la condición de prueba, se vuelve verdadera. Este bucle se utiliza cuando el usuario no conoce de antemano el número de iteraciones a realizar. Hay muchos casos en los que se utiliza un bucle while en varias condiciones.

En este tutorial, veremos cómo usar bucles while con múltiples condiciones.

Utilice los operadores lógicos y y o para hacer un bucle while de Python con múltiples condiciones

El operador lógico y evalúa primero la expresión completa y luego devuelve el resultado basado en esa evaluación. Si alguna de las dos condiciones no se cumple o no es verdadera, la declaración se considerará falsa y el código no se ejecutará.

Ejemplo:

x = 10
y = 20
initial_count = 0
while initial_count < x and initial_count < y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

Producción :

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20

En este método, primero hacemos dos variables, x e y, iguales a 10 y 20, respectivamente. Luego inicializamos la cuenta igual a cero. Después de hacer todo esto, comenzamos con nuestro bucle while, que crea dos condiciones como se muestra en el código anterior. Finalmente, entra en juego el operador lógico y. Este operador primero combina las dos condiciones creadas por el usuario en una y luego verifica ambas condiciones en su conjunto. Si ambas condiciones resultan ser verdaderas, entonces el bucle se ejecuta; de lo contrario, no es así. Además, este operador deja de evaluar después de encontrar que la primera afirmación es verdadera. Como en este caso, el bucle dejó de funcionar después de la cuenta de 10.

Pasemos al operador lógico o. Al igual que el operador lógico y, el operador o también evalúa las condiciones dadas y luego combina ambas condiciones como una sola. La ventaja de usar este operador es que incluso si una de las dos declaraciones condicionales es verdadera, el código se ejecutará. Si ambas declaraciones resultan ser falsas, el código no se ejecutará.

Ejemplo:

x = 10
y = 20
initial_count = 0
while initial_count < x or initial_count < y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

Producción :

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20
count: 10, x = 10, y = 20
count: 11, x = 10, y = 20
count: 12, x = 10, y = 20
count: 13, x = 10, y = 20
count: 14, x = 10, y = 20
count: 15, x = 10, y = 20
count: 16, x = 10, y = 20
count: 17, x = 10, y = 20
count: 18, x = 10, y = 20
count: 19, x = 10, y = 20

Tenga en cuenta que en este método, el bucle no se detiene después de la primera declaración. Es porque el operador descubre que la segunda condición también es cierta. Si la primera afirmación era verdadera y la segunda afirmación no lo era, entonces el bucle se detendría después de la cuenta de 10.

Utilice operadores lógicos not para hacer un bucle while de Python con múltiples condiciones

Hay un operador lógico más mediante el cual podemos usar el bucle while en múltiples condiciones, y ese operador se llama operador not. Este operador se utiliza para devolver el valor opuesto de la declaración booleana. Por ejemplo, si el estado booleano es not False, se devolverá verdadero, y si la declaración booleana es not True, se devolverá falso.

Ejemplo:

x = 10
y = 20
initial_count = 0
while not initial_count > x and not initial_count > y:
    print(f"count: {initial_count}, x = {x}, y = {y}")
    initial_count += 1

Producción :

count: 0, x = 10, y = 20
count: 1, x = 10, y = 20
count: 2, x = 10, y = 20
count: 3, x = 10, y = 20
count: 4, x = 10, y = 20
count: 5, x = 10, y = 20
count: 6, x = 10, y = 20
count: 7, x = 10, y = 20
count: 8, x = 10, y = 20
count: 9, x = 10, y = 20
count: 10, x = 10, y = 20

Aquí, las declaraciones while significan que si el recuento inicial no es mayor que x y el recuento inicial no es mayor que y, solo devuelve el siguiente código. Además, tenga en cuenta que la operación lógica y también se usa en el código anterior, lo que significa que el operador y encuentra la primera declaración not verdadera y no evalúa la segunda declaración not. Finalmente, el bucle comienza a iterar y termina a la cuenta de 10.

Entonces, al igual que hemos tomado solo dos condiciones en el bucle while como ejemplo, se pueden agregar más de estas declaraciones.

Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Artículo relacionado - Python Loop