7. 运算符优先级
什么是运算符优先级 运算符优先级(Operator Precedence)决定了在一个表达式中哪个运算符先被执行。
当表达式中有多个运算符时,优先级高的运算符会先进行计算。
示例
x = 1 + 2 * 3 ** 4 - 2
x = 1 + 2 * 81 - 2
x = 1 + 162 - 2
x = 163 - 2
x = 161
以上示意一个赋值语句右侧表达式的执行顺序。
python 3.13 的运算符优先级表
运算符
描述
(expressions...),[expressions...], {key: value...}, {expressions...}绑定或加圆括号的表达式,列表显示,字典显示,集合显示
x[index], x[index:index], x(arguments...), x.attribute抽取,切片,调用,属性引用
await xawait 表达式
**乘方 [[5]
+x, -x, ~x正,负,按位非 NOT
*, @, /, //, %乘,矩阵乘,除,整除,取余 [[6]
+, -加和减
<<, >>移位
&按位与 AND
^按位异或 XOR
|按位或 OR
in, not in, is, is not, <, <=, >, >=, !=, ==比较运算,包括成员检测和标识号检测
not x布尔逻辑非 NOT
and布尔逻辑与 AND
or布尔逻辑或 OR
if -- else条件表达式
lambdalambda 表达式
:=赋值表达式
上表中优先级自上而下依次降低。