開発環境
- Python version: python 3.10.11
Pythonの比較演算子とは
Pythonの比較演算子とは、値や式の比較を行うための演算子です。
Pythonの主要比較演算子は、大なり・小なり・以上・以下・等しい・等しくないなどがあります。
公式リファレンス:https://docs.python.org/ja/3/reference/expressions.html#value-comparisons
Pythonの比較演算子の書き方
Pythonの比較演算子の書き方は下記になります。
1 | 式1 比較演算子 式2 |
比較演算子の一覧
Pythonで定義されている比較演算子の一覧は下記となります。
1 2 3 4 5 6 7 8 9 10 | x == y # x が y と等しい x != y # x が y と等しくない x < y # x が y よりも小さい x > y # x が y よりも大きい x <= y # x が y 以下である x >= y # x が y 以上である x is y # x が y と等しい x is not y # x が y と異なる x in [y] # x という要素 が y に存在する x not in [y] # x という要素 が y に存在しない |
左辺と右辺のオブジェクトが等しいかどうか、また大きいか小さいかなどを比較します。
なお、結果として比較演算子はブール値の True または False を返します。
比較演算子の優先順位
Pythonには優先順位があります。以下は主な演算子の優先順位の一覧です。
演算子 | 説明 |
---|---|
(expressions...), [expressions...], {key: value...}, {expressions...} | 式結合またはタプル表示、リスト表示、辞書表示、集合表示 |
x[index], x[index:index], x(arguments...), x.attribute | 添字指定、スライス操作、呼び出し、属性参照 |
await x | Await 式 |
** | べき乗 |
+x, -x, ~x | 正数、負数、ビット単位 NOT |
*, @, /, //, % | 乗算、行列乗算、除算、切り捨て除算、剰余 |
+, - | 加算および減算 |
<<, >> | シフト演算 |
& | ビット単位 AND |
^ | ビット単位 XOR |
| | ビット単位 OR |
in, not in, is, is not, <, <=, >, >=, !=, == | 所属や同一性のテストを含む比較 |
not x | ブール演算 NOT |
and | ブール演算 AND |
or | ブール演算 OR |
if -- else | 条件式 |
lambda | ラムダ式 |
Pythonの演算子は上から順に優先順位が高くなります。例えば、比較演算子は算術演算子よりも優先順位が高いです。
演算子の優先順位は、数式を評価するときにどの演算を先に行うかを決定します。そのため、適切な優先順位を理解していないと、意図しない結果が生じる可能性があるため、注意が必要です。
Pythonの比較演算子の使い方
Pythonの比較演算子の使い方について解説していきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | print(100 == 100) # => true print(100 == 200) # => false print(100 != 200) # => true print(100 != 100) # => false print(100 > 99) # => true print(100 > 100) # => false print(100 < 101) # => true print(100 < 100) # => false print(100 >= 100) # => true print(100 >= 101) # => false print(100 <= 100) # => true print(100 <= 99) # => false print(100 is 100) # => true print(100 is "100") # => false print(100 is not "100") # => true print(100 is not 100) # => false print(100 in [100,101,102]) # => true print(100 in [99,101,102]) # => false print(100 not in [99,101,102]) # => true print(100 not in [100,101,102]) # => false |
上記のコードでは、数値や文字列同士の比較を行い、それぞれの比較演算子の計算結果を出力しています。
また、比較演算子を応用したサンプルコードは下記になります。
1 2 3 4 5 6 7 8 | # 年齢が20歳以上かを判定する練習問題 targetAge = 20 limitAge = 20 if targetAge >= limitAge: print("20歳以上です。") else: print("20歳未満です。") |
年齢が20歳以上かどうかを判定するサンプルコードですが、このコードでは条件がTrueの場合には"20歳以上です。"、Falseの場合には"20歳未満です。"と表示するプログラムです。
おわりに
Pythonの比較演算子の使い方を解説してきましたが、いかがだったでしょうか?
Pythonの比較演算子をマスターすれば、比較演算子の結果がTrueかFalseかでプログラムの流れを制御する条件式で判定する際に非常に有用です。
比較演算子はプログラミングの基本の基本でもあるため、条件に合わせた結果によって処理をコントロールできるようにしていきましょう。