Python 中的各类运算符优先级从高到底如下表:
运算符 | 功能 |
---|---|
** | 幂次运算 |
~ | 按位取反 |
+, - | 一元加号,一元减号(其实就是正负号) |
*, /, %, // | 乘法运算,除法运算,取模运算,整除运算 |
+, - | 加法运算,减法运算 |
<<, >> | 左移运算,右移运算 |
& | 按位与运算 |
^ | 异或运算 |
| | 按位或运算 |
<, >, <=, >=, ==, != | 小于,大于,小于等于,大于等于,等于,不等于(包括 Python2 的 <>) |
is, is not | 身份运算符 |
in, not in | 成员运算符 |
not | 逻辑非运算 |
and | 逻辑与运算 |
or | 逻辑或运算 |
Tips:
1、在实际编写比较长的计算式时,可以使用多个小括号来设置优先级,哪怕不知道确定的优先级,只要带着小括号,小括号内的表达式就会优先计算,也方便后期代码的维护。
2、逻辑与或和按位与或的优先级类似,都是与运算优先级大于或运算优先级。