Priorité des opérateurs logiques en Python
Lorsqu'il s'agit d'opérateurs logiques dans les langages de programmation, il est crucial de comprendre leur priorité et leur ordre d'opérations. En Python, les opérateurs NOT, AND et OR suivent une hiérarchie spécifique qui régit l'ordre dans lequel ils évaluent les expressions.
Ordre de priorité :
Contrairement à la priorité séquence en C et C (PAS > AND > OR), Python a son propre ordre unique :
1. PAS
2. ET
3. OR
De la priorité la plus élevée à la plus basse, NOT est évalué en premier, suivi de AND, puis de OR. Cela signifie que les opérations NOT ont priorité sur AND et OR, et que les opérations AND ont priorité sur OR.
Exemple :
Considérez l'expression Python suivante :
result = not a and b or c
Selon l'ordre de priorité, l'expression sera évaluée comme suit :
Tableau complet des priorités :
Pour une liste complète des priorités des opérateurs en Python, reportez-vous au tableau suivant :
Precedence | Operators | |
---|---|---|
0 | Assignment (=) | |
1 | Lambda functions (lambda) | |
2 | Conditional expression (if-else) | |
3 | Logical OR (or) | |
4 | Logical AND (and) | |
5 | Logical NOT (not) | |
6 | Comparison operators (<, <=, >, >=, !=, ==) | |
7 | Bitwise OR ( | ) |
8 | Bitwise XOR (^), Bitwise AND (&) | |
9 | Shift operators (<<, >>) | |
10 | Addition ( ), Subtraction (-) | |
11 | Multiplication (*), Division (/), Floor division (//), Modulo (%) | |
12 | Unary plus ( ), Unary minus (-), Bitwise NOT (~) | |
13 | Exponentiation (**) | |
14 | Coroutine creation (async with) | |
15 | Indexing and slicing ([...], [...]), Function calls, Attribute access | |
16 | Parentheses, Square brackets, Braces, Set literals |
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!