Python プログラミングでは、一般に演算子は値と変数の演算を実行するために使用されます。これらは、論理演算および算術演算に使用される標準記号です。この記事では、さまざまな種類の Python 演算子。
- 演算子: これらは特別な記号です。例: - + 、 * 、 / など。
- オペランド: 演算子が適用される値です。
Python の演算子の種類
Python の算術演算子
パイソン 算術演算子 次のような基本的な数学演算を実行するために使用されます。 加算、減算、乗算 、 そして 分割 。
Python 3.x では除算の結果は浮動小数点ですが、Python 2.x では 2 つの整数の除算は整数でした。 Python 3.x で整数の結果を取得するには、floored (// integer) が使用されます。
| オペレーター | 説明 | 構文 |
|---|---|---|
| + | 加算: 2 つのオペランドを加算します。 | x + y |
| – | 減算: 2 つのオペランドを減算します。 | x–y |
| * | 乗算: 2 つのオペランドを乗算します。 | x * y |
| / | 除算 (float): 最初のオペランドを 2 番目のオペランドで除算します。 | x/y |
| // | 除算 (フロア): 最初のオペランドを 2 番目のオペランドで除算します。 | x // y |
| % | モジュラス: 最初のオペランドを 2 番目のオペランドで割ったときの余りを返します。 | x %y |
| ** | べき乗: 1 番目の 2 乗を返します | x**y |
Python の算術演算子の例
ディビジョンオペレーター
で Pythonプログラミング 言語 ディビジョンオペレーター 2 つの数値を除算して商を返すことができます。つまり、最初の数値または左側の数値を 2 番目の数値または右側の数値で割って、商を返します。
除算演算子には次の 2 種類があります。
- フロート分割
- フロア区分
フロート分割
この演算子によって返される商は、2 つの数値が整数であるかどうかに関係なく、常に浮動小数点数です。例えば:
例: このコードは除算演算を実行し、結果を出力します。これは、整数除算と浮動小数点除算の両方が正確な結果を返すことを示しています。例えば、 '10/2' 結果として 「5.0」 、 そして 「-10/2」 結果として 「-5.0」 。
パイソン
print(5/5) print(10/2) print(-10/2) print(20.0/2)>
出力:
1.0 5.0 -5.0 10.0>
整数除算(フロア除算)
この演算子によって返される商は、渡される引数によって異なります。いずれかの数値が浮動小数点数の場合は、出力を浮動小数点数で返します。いずれかの数値が負の場合、出力がフロアされるため、フロア除算とも呼ばれます。例えば:
例: このコードは、 // Python 演算子で 。次のような結果が得られます。 '10//3' 等しい 「3」 、 「-5//2」 等しい 「-3」 、」 5.0//2フィート 等しい 「2.0」 、 そして 「-5.0//2」 等しい 「-3.0」 。整数除算は、除算結果以下の最大の整数を返します。
ニシキヘビ
print(10//3) print (-5//2) print (5.0//2) print (-5.0//2)>
文字列Javaの長さ
出力:
3 -3 2.0 -3.0>
Python における算術演算子の優先順位
Python における算術演算子の優先順位は次のとおりです。
- P – 括弧
- E – べき乗
- M – 乗算 (乗算と除算は同じ優先順位を持ちます)
- D – 部門
- A – 加算 (加算と減算は同じ優先順位を持ちます)
- S – 減算
Python 演算子の係数は、数値の最後の桁を抽出するのに役立ちます。例えば:
- x % 10 -> 最後の桁を返します
- x % 100 -> 最後の 2 桁を計算
加算、減算、乗算、モジュロ、べき乗を備えた算術演算子
以下は、Python のさまざまな算術演算子がどのように機能するかを示す例です。
例: このコードは、次の値を使用して基本的な算術演算を実行します。 「あ」 そして 「b」 。追加します ('+') 、減算 ('-') 、乗算します ('*') 、剰余を計算します ('%') 、 a の乗を計算します。 「b(**)」 。これらの操作の結果が印刷されます。
パイソン
a = 9 b = 4 add = a + b sub = a - b mul = a * b mod = a % b p = a ** b print(add) print(sub) print(mul) print(mod) print(p)>
出力:
13 5 36 1 6561>
注記: 参照する / と // の違い これら 2 つの Python 演算子に関する興味深い事実については、こちらをご覧ください。
Python 演算子の比較
Pythonで 比較 の 関係演算子 値を比較します。それはどちらかに戻ります 真実 または 間違い 状態に応じて。
| オペレーター | 説明 | 構文 |
|---|---|---|
| > | より大きい: 左のオペランドが右のオペランドより大きい場合は True | x> y |
| < | Less than: 左のオペランドが右のオペランドより小さい場合は True | バツ |
| == | 等しい: 両方のオペランドが等しい場合は True | x == y |
| != | 等しくない – オペランドが等しくない場合は True | x != y |
| >= | 左のオペランドが右のオペランド以上の場合は True 以上 | x>= y |
| <= | 左のオペランドが右のオペランド以下の場合、True 以下です。 | x <= y |
= は代入演算子と == 比較演算子です。
Python における比較演算子の優先順位
Python では、比較演算子の優先順位は算術演算子よりも低くなります。比較演算子内のすべての演算子の優先順位は同じです。
Python の比較演算子の例
Python の比較演算子の例を見てみましょう。
例: コードは次の値を比較します。 「あ」 そして 「b」 さまざまな比較 Python 演算子を使用して結果を出力します。かどうかを確認します 「あ」 より大きい、より小さい、等しい、等しくない、以上、および以下である 「b」 。
パイソン
a = 13 b = 33 print(a>b) 印刷(a< b) print(a == b) print(a != b) print(a>= b) print(a<= b)>
出力
False True False True False True>
Python の論理演算子
パイソン 論理演算子 実行する 論理積 、 論理和 、 そして 論理否定 オペレーション。条件文を組み合わせるために使用されます。
それ以外の場合は Java
| オペレーター | 説明 | 構文 |
|---|---|---|
| そして | 論理 AND: 両方のオペランドが true の場合は true | x と y |
| または | 論理和: いずれかのオペランドが true の場合は true | x または y |
| ない | 論理否定: オペランドが false の場合は True | ×ではない |
Python における論理演算子の優先順位
Python における論理演算子の優先順位は次のとおりです。
- 論理的ではありません
- 論理的かつ
- 論理的または
Python の論理演算子の例
次のコードは、Python で論理演算子を実装する方法を示しています。
例: このコードは、ブール値を使用して論理演算を実行します。両方であるかどうかをチェックします 「あ」 そして 「b」 本当です( 'そして' )、少なくとも 1 つが true の場合 ( 'または' )、の値を否定します。 「あ」 を使用して 'ない' 。結果はそれに応じて出力されます。
パイソン
a = True b = False print(a and b) print(a or b) print(not a)>
出力
False True False>
Python のビット演算子
パイソン ビット演算子 ビットに作用し、ビットごとの操作を実行します。これらは 2 進数を操作するために使用されます。
| オペレーター | 説明 | 構文 |
|---|---|---|
| & | ビットごとの AND | xとy |
| | | ビットごとの OR | × |そして |
| ~ | ビットごとの NOT | ~x |
| ^ | ビットごとの XOR | x^y |
| >> | ビット単位の右シフト | ×>> |
| << | ビット単位の左シフト | ×<< |
Python におけるビット演算子の優先順位
Python におけるビット単位演算子の優先順位は次のとおりです。
- ビットごとの NOT
- ビット単位のシフト
- ビットごとの AND
- ビットごとの XOR
- ビットごとの OR
Python のビット演算子
以下は、Python のビット単位演算子がどのように機能するかを示す例です。
例: このコードは、次の値を使用したさまざまなビット単位の演算を示しています。 「あ」 そして 「b」 。ビット単位で実行されます そして (&) 、 または (|) 、 違います (~) 、 無料(^^) 、 右シフト (>>) 、 そして 左シフト (<<) 操作を実行し、結果を出力します。これらの操作は、数値のバイナリ表現を操作します。
パイソン
a = 10 b = 4 print(a & b) print(a | b) print(~a) print(a ^ b) print(a>> 2) 印刷(a<< 2)>
出力
0 14 -11 14 2 40>
Python の代入演算子
パイソン 代入演算子 変数に値を割り当てるために使用されます。
| オペレーター | 説明 | 構文 |
|---|---|---|
| = | 式の右側の値を左側のオペランドに代入します。 | x = y + z |
| += | AND の追加: 右側のオペランドと左側のオペランドを加算し、左側のオペランドに代入します。 | a+=b a=a+b |
| -= | AND の減算: 左オペランドから右オペランドを減算し、左オペランドに代入します。 | a-=b a=a-b |
| *= | AND の乗算: 右オペランドと左オペランドを乗算し、左オペランドに代入します。 | a*=b a=a*b |
| /= | AND 除算: 左オペランドを右オペランドで除算し、左オペランドに代入します。 | a/=b a=a/b |
| %= | モジュラス AND: 左オペランドと右オペランドを使用してモジュラスを取得し、結果を左オペランドに割り当てます。 | a%=b a=a%b |
| //= | Divide(floor) AND: 左オペランドを右オペランドで除算し、値(floor)を左オペランドに割り当てます。 | a//=b a=a//b |
| **= | 指数 AND: オペランドを使用して指数 (累乗) 値を計算し、値を左側のオペランドに割り当てます。 | a**=b a=a**b |
| &= | オペランドに対してビットごとの AND を実行し、左のオペランドに値を割り当てます。 | a&=b a=a&b |
| |= | オペランドに対してビットごとの OR を実行し、左側のオペランドに値を割り当てます。 | a|=b a=a|b |
| ^= | オペランドに対してビットごとの xOR を実行し、左のオペランドに値を割り当てます。 | a^=b a=a^b |
| >>= | オペランドに対してビット単位の右シフトを実行し、値を左オペランドに割り当てます。 | a>>=b a=a>>b |
| <<= | オペランドに対してビット単位の左シフトを実行し、値を左オペランドに割り当てます。 | a <<= b a= a << b |
Python の代入演算子
Python の代入演算子の例を見てみましょう。
例: コードは次で始まります 「あ」 そして 「b」 両方とも値 10 を持ちます。次に、加算、減算、乗算、および左シフト演算という一連の演算を実行します。 「b」 。各操作の結果が出力され、これらの操作が値に及ぼす影響が示されます。 「b」 。
パイソン
a = 10 b = a print(b) b += a print(b) b -= a print(b) b *= a print(b) b <<= a print(b)>
出力
10 20 10 100 102400>
Python のアイデンティティ演算子
Pythonでは、 は そして ではありません は アイデンティティ演算子 両方とも、2 つの値がメモリの同じ部分にあるかどうかを確認するために使用されます。 2 つの変数が等しいということは、それらが同一であることを意味するものではありません。
is True if the operands are identical is not True if the operands are not identical>
Python の恒等演算子の例
Python の ID 演算子の例を見てみましょう。
Pythonの剰余演算子
例: このコードは、Python で変数を比較するために恒等演算子を使用します。かどうかを確認します 「あ」 と同じオブジェクトではありません 「b」 (値が異なるため、これは当てはまります) 「あ」 と同じオブジェクトです 「c」 (それは本当です、なぜなら 「c」 の値が割り当てられました 「あ」 )。
パイソン
a = 10 b = 20 c = a print(a is not b) print(a is c)>
出力
True True>
Python のメンバーシップ演算子
Pythonでは、 で そして ありませんで は メンバーシップオペレーター 値または変数がシーケンス内にあるかどうかをテストするために使用されます。
in True if value is found in the sequence not in True if value is not found in the sequence>
Python のメンバーシップ演算子の例
次のコードは、Python でメンバーシップ演算子を実装する方法を示しています。
例: コードは値の存在をチェックします。 'バツ' そして 'そして' リストにあります。各値がリストに存在するかどうかを出力します。 'バツ' リストに載っていない、そして 'そして' 印刷されたメッセージで示されるように、存在します。コードでは、 'で' そして 'ありませんで' これらのチェックを実行するための Python オペレーター。
パイソン
x = 24 y = 20 list = [10, 20, 30, 40, 50] if (x not in list): print('x is NOT present in given list') else: print('x is present in given list') if (y in list): print('y is present in given list') else: print('y is NOT present in given list')>
出力
x is NOT present in given list y is present in given list>
Pythonの三項演算子
Pythonでは、 三項演算子 条件式とも呼ばれる演算子は、条件が true または false であることに基づいて何かを評価します。 Python バージョン 2.5 で追加されました。
単に条件をテストできるようにするだけです 単線 複数行の if-else を置き換えてコードをコンパクトにします。
構文: [on_true] if [式] else [on_false]
Python の三項演算子の例
コードは変数に値を代入します 「あ」 そして 「b」 (それぞれ 10 と 20)。次に、条件付き代入を使用して 2 つの値のうち小さい方を決定し、それを変数に代入します。 「分」 。最後に、次の値を出力します。 「分」 、この場合は 10 です。
パイソン
クロムアドレスバー
a, b = 10, 20 min = a if a < b else b print(min)>
出力:
10>
Python における演算子の優先順位と結合性
Pythonでは、 演算子の優先順位と結合性 オペレーターの優先順位を決定します。
Python における演算子の優先順位
これは、優先順位の異なる複数の演算子を含む式で使用され、どの演算を最初に実行するかを決定します。
Python での演算子の優先順位がどのように機能するかの例を見てみましょう。
例: コードは最初に式の値を計算して出力します。 10+20*30 、これは 610 です。次に、 '名前' そして '年' 変数。名前が アレックス or 演算子を使用して条件が満たされると、出力されます。 こんにちは!いらっしゃいませ。
パイソン
expr = 10 + 20 * 30 print(expr) name = 'Alex' age = 0 if name == 'Alex' or name == 'John' and age>= 2: print('こんにちは! ようこそ。') else: print('Good Bye!!')>>
出力
610 Hello! Welcome.>
Python の演算子の結合性
式に同じ優先順位の演算子が 2 つ以上含まれている場合は、演算子の結合性を使用して決定します。左から右または右から左のいずれかです。
次のコードは、Python の演算子の結合性がどのように機能するかを示しています。
例: このコードは、さまざまな数学的演算を示しています。除算と乗算、加算と減算、括弧内の減算、累乗の結果を計算して出力します。このコードは、さまざまな数学的計算とその結果を示しています。
パイソン
print(100 / 10 * 10) print(5 - 2 + 3) print(5 - (2 + 3)) print(2 ** 3 ** 2)>
出力
100.0 6 0 512>
Python オペレーターの知識を試すには、 Python の演算子に関するクイズ 。
Python オペレーターの演習問題
以下は、Python 演算子に関する 2 つの演習問題です。これらの演習問題では、算術演算子と比較演算子について説明しました。 Python オペレーターに関するその他の演習については、以下のページを参照してください。
Q1. 整数に対する基本的な算術演算を実装するコード
文字列json Java
パイソン
num1 = 5 num2 = 2 sum = num1 + num2 difference = num1 - num2 product = num1 * num2 quotient = num1 / num2 remainder = num1 % num2 print('Sum:', sum) print('Difference:', difference) print('Product:', product) print('Quotient:', quotient) print('Remainder:', remainder)>
出力
Sum: 7 Difference: 3 Product: 10 Quotient: 2.5 Remainder: 1>
Q2. 整数の比較演算を実装するコード
パイソン
num1 = 30 num2 = 35 if num1>num2: print('最初の数値の方が大きいです。') elif num1< num2: print('The second number is greater.') else: print('The numbers are equal.')>
出力
The second number is greater.>
さらに演習を探索してください: Python の演算子の演習