Python Language Comparaciones de cadena


Ejemplo

Puede comparar varios elementos con múltiples operadores de comparación con comparación de cadena. Por ejemplo

x > y > z

Es sólo una forma corta de:

x > y and y > z

Esto se evaluará como True solo si ambas comparaciones son True .

La forma general es

a OP b OP c OP d ...

Donde OP representa una de las múltiples operaciones de comparación que puede usar, y las letras representan expresiones válidas arbitrarias.

Tenga en cuenta que 0 != 1 != 0 evalúa como True , aunque 0 != 0 sea False . A diferencia de la notación matemática común en la que x != y != z significa que x , y , z tienen valores diferentes. Las operaciones de encadenamiento == tienen el significado natural en la mayoría de los casos, ya que la igualdad es generalmente transitiva.

Estilo

No hay un límite teórico sobre la cantidad de elementos y operaciones de comparación que utiliza, siempre que tenga la sintaxis adecuada:

1 > -1 < 2 > 0.5 < 100 != 24

Lo anterior devuelve True si cada comparación devuelve True . Sin embargo, el uso de encadenamiento enrevesado no es un buen estilo. Un buen encadenamiento será "direccional", no más complicado que

1 > x > -4 > y != 8

Efectos secundarios

Tan pronto como una comparación devuelve False , la expresión se evalúa inmediatamente en False , omitiendo todas las comparaciones restantes.

Tenga en cuenta que la expresión exp en a > exp > b se evaluará solo una vez, mientras que en el caso de

a > exp and exp > b

exp se calculará dos veces si a > exp es verdadero.