python 运算符优先级由高到低

Python 中运算符优先级,括号的优先级是最高的,无论任何时候优先计算括号里面的内容,逻辑运算符的优先级最低。算术运算符可以分为四种,幂运算最高,其次是正负号,然后是 “* /// %”,最后才是加减 “+ -”。以下运算符按从上到下,优先级从高到低排列,同行为相同优先级,相同优先级需要考虑结合性:

括号:()

幂运算:**

按位取反:~

正号、负号:+、-

乘、除、取模、取整除:* 、/、 %、 //

加、减:+ 、-

右移、左移:>> 、<<

按位 “与”:&

按位 “异或”,按位 “或”:^ 、|

比较运算符:<= 、< 、>、 >=

等于、不等于:==、!=

赋值运算符:=、%=、/=、//=、-=、+=、*=、**=

身份运算符:is、is not

成员运算符:in、not in

逻辑运算符:and or not

虽然 Python 运算符存在优先级的关系,但写程序时不建议写很长的表达式,建议写程序时,遵守以下两点原则:

尽量不要把一个表达式写的过长过于复杂,如果计算过程的确需要,可以尝试将它拆分几部分来写。

尽量多使用 () 来控制运算符的执行顺序,使用 () 可以让运算的先后顺序变得十分清楚。
经验分享 程序员 微信小程序 职场和发展