Python运算符优先级示例
运算符优先级来确定条件的表达式中的分组。这会影响一个表达式如何计算。某些运算符的优先级高于其他;例如,乘法运算符的优先级比加法运算更高。
例如x=7 + 3* 2;这里,x被赋值13,而不是20,因为运算符*的优先级比+更高,所以它首先乘以3 * 2,然后加7。
这里,具有最高优先级运算符出现在表格上方,那些最低的显示在底部。在一个表达式,更高的优先级运算符将首先计算。
运算符 | 描述 |
---|---|
** | 幂(指数) |
~ + - | 补码,一元加号和减号(方法名的最后两个+@和 - @) |
* / % // | 乘,除,取模和地板除 |
+ - | 加法和减法 |
>> << | 左,右按位转移 |
& | 按位“与” |
^ | | 按位异或`'和`定期'或' |
<= < > >= | 比较运算符 |
<> == != | 等式运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 运算符标识 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |
例如:
试试下面的例子来理解Python编程语言可供选择的运算符优先级:
#!/usr/bin/python a = 20 b = 10 c = 15 d = 5 e = 0 e = (a + b) * c / d #( 30 * 15 ) / 5 print "Value of (a + b) * c / d is ", e e = ((a + b) * c) / d # (30 * 15 ) / 5 print "Value of ((a + b) * c) / d is ", e e = (a + b) * (c / d); # (30) * (15/5) print "Value of (a + b) * (c / d) is ", e e = a + (b * c) / d; # 20 + (150/5) print "Value of a + (b * c) / d is ", e
当执行上面的程序,它会产生以下结果:
Value of (a + b) * c / d is 90 Value of ((a + b) * c) / d is 90 Value of (a + b) * (c / d) is 90 Value of a + (b * c) / d is 50