【Python】 比較演算子の書き方と使い方の基本

作成日: 更新日:

開発環境

  • Python version: python 3.10.11

Pythonの比較演算子とは

Pythonの比較演算子とは、値や式の比較を行うための演算子です。 Pythonの主要比較演算子は、大なり・小なり・以上・以下・等しい・等しくないなどがあります。 公式リファレンス:https://docs.python.org/ja/3/reference/expressions.html#value-comparisons

Pythonの比較演算子の書き方

Pythonの比較演算子の書き方は下記になります。

11 比較演算子 式2

比較演算子の一覧

Pythonで定義されている比較演算子の一覧は下記となります。

1x == y       # x が y と等しい
2x != y       # x が y と等しくない
3x < y        # x が y よりも小さい
4x > y        # x が y よりも大きい
5x <= y       # x が y 以下である
6x >= y       # x が y 以上である
7x is y       # x が y と等しい
8x is not y   # x が y と異なる
9x in [y]     # x という要素 が y に存在する
10x not in [y] # x という要素 が y に存在しない

左辺と右辺のオブジェクトが等しいかどうか、また大きいか小さいかなどを比較します。 なお、結果として比較演算子はブール値の True または False を返します。

比較演算子の優先順位

Pythonには優先順位があります。以下は主な演算子の優先順位の一覧です。

演算子説明
(expressions...), [expressions...], {key: value...}, {expressions...}式結合またはタプル表示、リスト表示、辞書表示、集合表示
x[index], x[index:index], x(arguments...), x.attribute添字指定、スライス操作、呼び出し、属性参照
await xAwait 式
**べき乗
+x, -x, ~x正数、負数、ビット単位 NOT
*, @, /, //, %乗算、行列乗算、除算、切り捨て除算、剰余
+, -加算および減算
<<, >>シフト演算
&ビット単位 AND
^ビット単位 XOR
in, not in, is, is not, <, <=, >, >=, !=, ==所属や同一性のテストを含む比較
not xブール演算 NOT
andブール演算 AND
orブール演算 OR
if -- else条件式
lambdaラムダ式

Pythonの演算子は上から順に優先順位が高くなります。例えば、比較演算子は算術演算子よりも優先順位が高いです。 演算子の優先順位は、数式を評価するときにどの演算を先に行うかを決定します。そのため、適切な優先順位を理解していないと、意図しない結果が生じる可能性があるため、注意が必要です。

Pythonの比較演算子の使い方

Pythonの比較演算子の使い方について解説していきます。

1print(100 == 100)               # => true
2print(100 == 200)               # => false
3print(100 != 200)               # => true
4print(100 != 100)               # => false
5print(100 > 99)                 # => true
6print(100 > 100)                # => false
7print(100 < 101)                # => true
8print(100 < 100)                # => false
9print(100 >= 100)               # => true
10print(100 >= 101)               # => false
11print(100 <= 100)               # => true
12print(100 <= 99)                # => false
13print(100 is 100)               # => true
14print(100 is "100")             # => false
15print(100 is not "100")         # => true
16print(100 is not 100)           # => false
17print(100 in [100,101,102])     # => true
18print(100 in [99,101,102])      # => false
19print(100 not in [99,101,102])  # => true
20print(100 not in [100,101,102]) # => false

上記のコードでは、数値や文字列同士の比較を行い、それぞれの比較演算子の計算結果を出力しています。 また、比較演算子を応用したサンプルコードは下記になります。

1# 年齢が20歳以上かを判定する練習問題
2targetAge = 20
3limitAge = 20
4
5if targetAge >= limitAge:
6    print("20歳以上です。")
7else:
8    print("20歳未満です。")

年齢が20歳以上かどうかを判定するサンプルコードですが、このコードでは条件がTrueの場合には"20歳以上です。"、Falseの場合には"20歳未満です。"と表示するプログラムです。

おわりに

Pythonの比較演算子の使い方を解説してきましたが、いかがだったでしょうか? Pythonの比較演算子をマスターすれば、比較演算子の結果がTrueかFalseかでプログラムの流れを制御する条件式で判定する際に非常に有用です。 比較演算子はプログラミングの基本の基本でもあるため、条件に合わせた結果によって処理をコントロールできるようにしていきましょう。

【Python】 比較演算子の書き方と使い方の基本 | いっしー@Webエンジニア