5.14 Summary
The following table summarizes the operator precedences
in Python, from lowest precedence (least binding) to highest precedence (most
binding). Operators in the same box have the same precedence. Unless the syntax is
explicitly given, operators are binary. Operators in the same box group left to right
(except for comparisons, including tests, which all have the same precedence and chain
from left to right -- see section 5.9 - and
exponentiation, which groups from right to left).
| lambda |
Lambda expression |
| or |
Boolean OR |
| and |
Boolean AND |
| not x |
Boolean NOT |
| in, not in |
Membership tests |
| is, is not |
Identity tests |
<, <=, >,
>=, <>, !=, == |
Comparisons |
| |
Bitwise OR |
^ |
Bitwise XOR |
& |
Bitwise AND |
<<, >> |
Shifts |
+, - |
Addition and subtraction |
*, /, % |
Multiplication, division, remainder |
+x, -x |
Positive, negative |
~x |
Bitwise not |
** |
Exponentiation |
x.attribute |
Attribute reference |
x[index] |
Subscription |
x[index:index] |
Slicing |
f(arguments...) |
Function call |
(expressions...) |
Binding or tuple display |
[expressions...] |
List display |
{key:datum...} |
Dictionary display |
`expressions...` |
String conversion |
|