128 votes

Priorité des opérateurs logiques NOT, AND, OR en Python

Pour autant que je sache, en C & C++, la séquence de priorité pour NOT AND & OR est NOT>AND>OR. Mais cela ne semble pas fonctionner de manière similaire en Python. J'ai essayé de la chercher dans la documentation de Python et j'ai échoué (je suppose que je suis un peu impatient.). Quelqu'un peut-il m'éclairer sur ce point ?

2voto

MarianD Points 4019

Il y a aucune raison valable pour que Python ait otros séquence de priorité de ces opérateurs que bien établi dans (presque) tous les autres langages de programmation, y compris C/C++.

Vous pouvez le trouver dans La référence du langage Python partie 6.16 - Priorité de l'opérateur, téléchargeable (pour la version actuelle et emballé avec toute autre documentation standard) à partir de https://docs.python.org/3/download.html ou le lire en ligne ici : 6.16. Préséance des opérateurs .

Mais il y a encore quelque chose dans Python qui peut vous induire en erreur : Le site résultat de and y or les opérateurs peuvent être différents de True ou False - voir 6.11 Opérations booléennes dans le même document.

-2voto

Aziz Nadirov Points 1

Expression 1 or 1 and 0 or 0 renvoie à 1 . Il semble que nous ayons la même priorité, presque la même.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X