python 运算符优先级由高到低
Python 中运算符优先级,括号的优先级是最高的,无论任何时候优先计算括号里面的内容,逻辑运算符的优先级最低。算术运算符可以分为四种,幂运算最高,其次是正负号,然后是 “* /// %”,最后才是加减 “+ -”。以下运算符按从上到下,优先级从高到低排列,同行为相同优先级,相同优先级需要考虑结合性:
括号:() 幂运算:** 按位取反:~ 正号、负号:+、- 乘、除、取模、取整除:* 、/、 %、 // 加、减:+ 、- 右移、左移:>> 、<< 按位 “与”:& 按位 “异或”,按位 “或”:^ 、| 比较运算符:<= 、< 、>、 >= 等于、不等于:==、!= 赋值运算符:=、%=、/=、//=、-=、+=、*=、**= 身份运算符:is、is not 成员运算符:in、not in 逻辑运算符:and or not 虽然 Python 运算符存在优先级的关系,但写程序时不建议写很长的表达式,建议写程序时,遵守以下两点原则: 尽量不要把一个表达式写的过长过于复杂,如果计算过程的确需要,可以尝试将它拆分几部分来写。 尽量多使用 () 来控制运算符的执行顺序,使用 () 可以让运算的先后顺序变得十分清楚。