【Python⑤】条件を書くための基本|比較演算子と真偽値
if 文を使うには、条件を書くためのルールを押さえる必要があります。その中心になるのが、比較演算子と真偽値です。そこで今回は、条件分岐の土台になるこの2つを整理します。
Pythonでは、「条件が成り立つかどうか」をもとに処理を分けます。そのため、何を比べているのか、そしてその結果がどのように表されるのかを理解しておくことが重要です。この部分が曖昧だと、if 文そのものは書けても、何を判定しているのかがわかりにくくなります。
この記事で整理すること
- 比較演算子とは何か
==、!=、>、<、>=、<=の意味- 真偽値
TrueとFalseの考え方 - 条件を書くときに混乱しやすい点
目的は、比較演算子を暗記することではありません。条件式を見たときに、何を比べていて、結果がどうなるのかを正確に読めるようになることです。
比較演算子とは何か
比較演算子は、2つの値を比べるための記号です。比較の結果は、「成り立つ」か「成り立たない」かのどちらかになります。
たとえば、5 が 3 より大きいかどうかを調べるなら、次のように書きます。
print(5 > 3)
この結果は True になります。つまり、比較演算子は数値や文字列などを比べて、その結果を真偽値として返す仕組みです。
== は「等しいかどうか」を表す
== は、左右の値が等しいかどうかを調べる記号です。print(10 == 10) print(10 == 5)
最初の比較は成り立つので True、2つ目は成り立たないので False になります。
ここで特に重要なのは、== と = は意味が違うということです。= は代入であり、== は比較です。この違いは、早い段階で明確にしておく必要があります。
!= は「等しくないかどうか」を表す
!= は、左右の値が等しくないかどうかを調べる記号です。print(10 != 5) print(10 != 10)
最初の比較は値が異なるので True、2つ目は同じ値なので False になります。
== が「等しいか」を見るのに対して、!= は「等しくないか」を見る記号です。意味が逆になるので、セットで整理しておくと理解しやすくなります。
> と < は大小を比べる
> は「より大きい」、< は「より小さい」を表します。
print(8 > 3)print(2 < 7)print(4 > 9)
最初の2つは成り立つので True、最後は成り立たないので False になります。
この2つは直感的に理解しやすいですが、向きの見間違いは起こりやすいです。特に複雑な条件式になると、何と何を比べているのかを丁寧に確認する必要があります。
>= と <= は「以上」「以下」を表す
>= は「以上」、<= は「以下」を表します。つまり、等しい場合も含めて比較します。
print(5 >= 5)print(3 <= 7)print(8 <= 4)
最初の2つは成り立つので True、最後は成り立たないので False になります。
たとえば、点数が60点以上なら合格としたい場合は、> ではなく >= を使う必要があります。この違いは条件分岐で非常に重要です。
真偽値とは何か
真偽値は、「成り立つ」「成り立たない」を表す値です。Pythonでは、成り立つ場合を True、成り立たない場合を False で表します。
比較演算子は、最終的にこの True か False を返します。つまり、条件式を書くということは、結果として真偽値を作ることでもあります。
print(10 == 10)print(10 < 3)
このコードでは、最初が True、次が False になります。if 文は、この真偽値を見て処理を分けています。
if 文と真偽値の関係
if 文では、条件式の結果が True なら処理を実行し、False なら実行しません。
score = 75 if score >= 60: print("合格")
このコードでは、比較の結果が True になるので、合格 が表示されます。つまり、if 文の中では、比較演算子が真偽値を作り、その真偽値によって処理が決まっています。
この流れを理解すると、if 文はかなり読みやすくなります。大事なのは、条件文をひとつの「真偽値を返す式」として見ることです。
条件式を読むときに意識すること
条件式を読むときは、まず左右で何を比べているのかを確認する必要があります。そのうえで、比較の結果が成り立つのかどうかを考えます。
たとえば、点数と合格ラインを比べているのか、名前が一致しているかを比べているのかで、見方は変わります。条件式は短いですが、何を判定しようとしているかを読み取ることが重要です。
また、条件式の意味を日本語に言い換えてみると、理解しやすくなることがあります。たとえば、score >= 60 なら「点数が60以上である」と読み替えると整理しやすくなります。
よくある混乱
ここでは、最初に混乱しやすい点を整理しておきます。
=と==を混同する>と>=の違いが曖昧になるTrueとFalseを単なる表示だと思ってしまう- 条件式全体が真偽値を返していることを意識しない
特に多いのは、= と == の混同です。代入と比較は役割がまったく違うので、この点は最初に区別しておく必要があります。
また、True と False は表示上の言葉ではなく、Pythonの中で実際に使われる値です。この理解があると、条件分岐の仕組みもかなり見えやすくなります。
今の段階で押さえるべきこと
現時点で必要なのは、複雑な条件式をたくさん覚えることではありません。まずは、比較演算子が2つの値を比べ、その結果として True または False を返すことを押さえる必要があります。
そのうえで、if 文はこの真偽値を使って処理を分けていることを理解しておくことが重要です。ここが整理できると、条件分岐の読み方がかなり安定します。
次に学ぶこと
ここまでで、条件を書くための基本として、比較演算子と真偽値を整理しました。この内容は、すでに学んだ if 文とも強くつながっています。
この補助記事を踏まえると、条件分岐の記事もより読みやすくなります。そのうえで、Phase 2 に進めば、実際のデータを扱う中で条件分岐をどう使うかも見えてきます。
まとめ
比較演算子は、2つの値を比べるための記号です。そして、その結果は True または False という真偽値で表されます。
if 文は、この真偽値を使って処理を分けています。つまり、条件式を理解することは、条件分岐の仕組みそのものを理解することにつながります。ここを押さえておけば、今後の条件分岐やデータ処理にも入りやすくなります。