Python3-operators-precedence-example
提供:Dev Guides
Python 3-演算子の優先順位の例
次の表に、優先順位の高いものから低いものまでのすべての演算子を示します。
Sr.No. | Operator & Description |
---|---|
1 |
べき乗(累乗) |
2 |
~ PLUS - 補数、単項プラスおよびマイナス(最後の2つのメソッド名は+ @および-@) |
3 |
乗算、除算、モジュロ、およびフロア除算 |
4 |
PLUS - 加減 |
5 |
>> << 左右のビット単位シフト |
6 |
& ビット単位の「AND」 |
7 | *^ |
ビット単位の排他的な「OR」および通常の「OR」 |
8 |
⇐ < > >= 比較演算子 |
9 |
<> == != 平等演算子 |
10 |
= %=/=//= -= PLUS= *= *=* 割り当て演算子 |
11 |
is is not アイデンティティ演算子 |
12 |
in not in 会員事業者 |
13 |
演算子の優先順位は、式の評価に影響します。
たとえば、x = 7&plus; 3 * 2;ここでは、演算子*の優先順位が&plus;よりも高いため、xには20ではなく13が割り当てられます。したがって、最初に3 *2を乗算してから7に加算されます。
ここでは、優先順位が最も高い演算子がテーブルの上部に表示され、最も低い演算子が下部に表示されます。
例
#!/usr/bin/python3
a = 20
b = 10
c = 15
d = 5
print ("a:%d b:%d c:%d d:%d" % (a,b,c,d ))
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)
出力
上記のプログラムを実行すると、次の結果が生成されます-
a:20 b:10 c:15 d:5
Value of (a + b) *c/d is 90.0
Value of ((a + b)* c)/d is 90.0
Value of (a + b) *(c/d) is 90.0
Value of a + (b* c)/d is 50.0