运算符优先级(高到低)
运算符 | 描述 |
---|---|
** | 指数 (最高优先级) |
~ + - | 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 'AND' |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
and or not | 逻辑运算符 |
幂运算的优先级:幂运算操作符比其左侧的一元操作符优先级高;比其右侧的一元操作符优先级低。
>>> - 3 ** 2 # -(3**2),幂在右,高于左侧一元操作符。
-9
>>> (- 3) ** 2
9
>>> 3 ** - 2 # 3**(-2),幂在左,低于右侧一元操作符。
0.1111111111111111