Enstringmiento de operadores de comparación en Python

Marcar más de dos condiciones es muy común en los lenguajes de programación. Digamos que queremos verificar la siguiente condición:

a < b < c

La sintaxis más común para hacerlo es la siguiente:

if a < b and b < c :
   {...}

En Python, hay una mejor manera de escribir esto utilizando el operador de comparación Chaining . El enstringmiento de operadores se puede escribir de la siguiente manera:

if a < b < c :
    {.....}

De acuerdo con la asociatividad y la precedencia en Python , todas las operaciones de comparación en Python tienen la misma prioridad, que es menor que la de cualquier operación aritmética, de desplazamiento o bit a bit. También a diferencia de C, expresiones como a < b < c tienen la interpretación convencional en matemáticas. Lista de operadores de comparación en Python:

">" | "<" | "==" | ">=" | "<=" | "!=" | "is" ["not"] | ["not"] "in"

Enstringmiento en Operadores de Comparación:

  1. Las comparaciones arrojan valores booleanos: Verdadero o Falso.
  2. Las comparaciones se pueden enstringr arbitrariamente. Por ejemplo:
x < y <= z is equivalent to x < y and y <= z, 
  1. excepto que y se evalúa solo una vez. (pero en ambos casos, z no se evalúa en absoluto cuando se descubre que x < y es falso).
  2. Formalmente, si a, b, c, …, y, z son expresiones y op1, op2, …, opN son operadores de comparación, entonces a op1 b op2 c … y opN z es equivalente a a op1 b y b op2 c y … y opN z, excepto que cada expresión se evalúa como máximo una vez.
  3. También,
a op1 b op2 c 

No implica ningún tipo de comparación entre a y c, por lo que

a < b > c

es perfectamente legal.

Python

# Python code to illustrate
# chaining comparison operators
x = 5
print(1 < x < 10)
print(10 < x < 20 )
print(x < 10 < x*10 < 100)
print(10 > x <= 9)
print(5 == x > 4)

Producción:

True
False
True
True
True

Otro ejemplo: 

Python

# Python code to Illustrate Chaining Comparison Operators
 
a, b, c, d, e, f = 0, 5, 12, 0, 15, 15
exp1 = a & lt
= b & lt
c & gt
d is not e is f
exp2 = a is d & gt
f is not c
 
print(exp1)
print(exp2)

Producción:

True
False

Referencia : Documentación de Python 3 Este artículo es una contribución de Pratik Chhajer . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *