二元数学运算符优先级
3^2*4 + 2%5
等于多少?由”运算符优先级表”得到的结果是38. 下表基于Python语言参考手册 中的§ 5.14, 作者是G. Rossum和F. Drake。运算符是按优先级从低到高的顺序排列。
运算符 | 说明 |
---|---|
or | 逻辑或 |
and | 逻辑与 |
not | 逻辑非 |
in, not in | 隶属关系 |
is, is not | 类型检测 |
>, <=, >, >=, ==, != | 比较 |
+, - | 加、减 |
*, /, % | 乘、除、余 |
**, ˆ | 指数 |
所以,计算3^2*4 + 2%5
时,Sage是这样加括号的:((3^2)*4) + (2%5)
。这样,先计算3^2
得9
, 再计算(3^2)*4
和2%5
, 最后加起来。