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