Python运算符优先级

以下表格列出了python运算符中从最高到最低优先级的顺序:

运算符描述
**指数 (最高优先级)
~ + –按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //乘,除,求余数和取整除
+ –加法减法
>> <<右移,左移运算符
&位 ‘AND’
^ |位运算符
<= < > >=比较运算符
== !=等于运算符
= %= /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not and or逻辑运算符
https://python-100.com/

以下实例演示了Python所有运算符优先级的操作:

实例(Python 3.0+)

#!/usr/bin/python3 a = 20 b = 10 c = 15 d = 5 e = 0 e = (a + b) * c / d #( 30 * 15 ) / 5 print (“(a + b) * c / d 运算结果为:”, e) e = ((a + b) * c) / d # (30 * 15 ) / 5 print (“((a + b) * c) / d 运算结果为:”, e) e = (a + b) * (c / d) # (30) * (15/5) print (“(a + b) * (c / d) 运算结果为:”, e) e = a + (b * c) / d # 20 + (150/5) print (“a + (b * c) / d 运算结果为:”, e)

以上实例输出结果:

(a + b) * c / d 运算结果为: 90.0
((a + b) * c) / d 运算结果为: 90.0
(a + b) * (c / d) 运算结果为: 90.0
a + (b * c) / d 运算结果为: 50.0

and 拥有更高优先级:

实例

x = True y = False z = False if x or y and z: print(“yes”) else: print(“no”)

以上实例输出结果:

yes

注意:Pyhton3 已不支持 <> 运算符,可以使用 != 代替,如果你一定要使用这种比较运算符,可以使用以下的方式:

>>> from __future__ import barry_as_FLUFL
>>> 1 <> 2
True
0

评论0

请先
没有账号?注册  忘记密码?