Maison >développement back-end >Tutoriel Python >La priorité des opérateurs est-elle importante lors de la comparaison de l'adhésion et de l'égalité en Python ?

La priorité des opérateurs est-elle importante lors de la comparaison de l'adhésion et de l'égalité en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 04:26:02639parcourir

Does Operator Precedence Matter When Comparing Membership and Equality in Python?

Comprendre la priorité des opérateurs 'in' et des opérateurs de comparaison en Python

Lorsque vous travaillez avec des opérateurs en Python, il est important de comprendre leur priorité pour éviter des résultats inattendus. L'opérateur « in » vérifie l'appartenance, tandis que les opérateurs de comparaison (par exemple, ==) vérifient l'égalité.

Considérez les comparaisons suivantes :

<code class="python">'1' in '11'  # True
('1' in '11') == True  # True</code>

Ces comparaisons produisent True, indiquant « 1 » est membre du « 11 ». Cependant, l’ordre des parenthèses peut avoir un impact significatif sur le résultat. Par exemple :

<code class="python">'1' in ('11' == True)  # TypeError</code>

Cela génère une TypeError car '1' ne peut pas être dans une valeur booléenne ('11' == True) puisque les booléens ne sont pas itérables.

Pour obtenir False sans entre parenthèses, nous pouvons utiliser le fait que les opérateurs 'in' et de comparaison ont la même priorité par défaut :

<code class="python">'1' in '11' == True  # False</code>

Dans cette expression, l'opérateur 'in' n'est pas chaîné avec '== True'. Au lieu de cela, il est évalué en premier et renvoie True. Ensuite, le résultat (True) est comparé à True à l'aide de l'opérateur '==', ce qui donne False.

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