Maison >développement back-end >Tutoriel Python >Pourquoi `0 < 0 == 0` renvoie-t-il False en Python ?

Pourquoi `0 < 0 == 0` renvoie-t-il False en Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-08 11:49:12260parcourir

Why Does `0 < 0 == 0` Return False in Python?

L'expression déroutante : pourquoi 0 < 0 == 0 Renvoyer False en Python ?

Le mécanisme de mise en file d'attente de Python dans Queue.py présente une expression intrigante qui s'évalue à False : 0 < 0 == 0. Comprendre ce comportement nécessite de démêler l'interprétation des comparaisons chaînées par Python.

Comparaisons chaînées : une approche simplifiée

Python simplifie les comparaisons de plages en autorisant les opérateurs relationnels chaînés . Au lieu d'écrire (0 < x) et (x <= 5), on peut utiliser de manière concise 0 < x <= 5. Cette commodité sous-tend le comportement de 0 < 0 == 0.

Interprétation étape par étape de la comparaison chaînée

Lorsqu'il rencontre une comparaison chaînée, Python opère de manière séquentielle :

  1. Évaluez la relation la plus à gauche (0 < 0). Cela renvoie True.
  2. Comparez le résultat à la valeur médiane (le côté droit de la deuxième relation). Cela vérifie True == 0, ce qui donne la valeur False.

Pourquoi les expressions entre parenthèses renvoient True

L'introduction de parenthèses modifie l'ordre d'évaluation, affectant l'interprétation :

  • (0 < 0) == 0 : La première comparaison True est ensuite vérifiée 0, ce qui donne True.
  • 0 < (0 == 0) : Ici, 0 est comparé à False, ce qui donne True.

Conclusion

La gestion par Python des comparaisons chaînées simplifie les comparaisons de plages. Cependant, leur interprétation nécessite de comprendre le processus de comparaison séquentielle. L'expression 0 < 0 == 0 est évalué à False car les comparaisons chaînées sont évaluées de gauche à droite, et non entre parenthèses. Les parenthèses peuvent forcer un ordre d'évaluation différent, conduisant à des résultats différents.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn