Pythonのif文の基本!条件分岐の書き方とelifの使い方をやさしく解説
生徒
「Pythonで“もし〜なら〜する”っていう判断をプログラムにさせたいときって、どうすればいいんですか?」
先生
「そういうときに使うのが、if文です。条件によって処理を分ける、いわゆる“条件分岐”ですね。」
生徒
「条件ってどうやって書くんですか?難しそう……」
先生
「大丈夫、やさしく説明していきますよ!まずは基本の形から見てみましょう。」
1. Pythonのif文とは?基本の形を覚えよう
Pythonのif文は、「もし〇〇ならば△△をする」というように、条件によって実行する処理を変えるための文法です。これを「条件分岐」と呼びます。
たとえば、「年齢が20歳未満なら利用できません」といったルールをプログラムにさせるには、以下のように書きます。
old = 18
if old < 20:
print("20歳未満の方はご利用できません。")
このコードでは、「oldが20より小さいとき(つまり20歳未満のとき)」に、右側の処理を実行しています。
2. if文の書き方のポイント
if文の基本的な構文は以下のとおりです。
if 条件:
実行する処理
条件の部分は、たとえば「a > b」や「age == 18」など、True(真)またはFalse(偽)になる式を書きます。:(コロン)を忘れないようにしましょう!
また、if文の下に書く処理は半角スペース4つで字下げ(インデント)するルールがあります。
3. else文で「それ以外」の処理を書く
if文では条件に合わないときに何もしないのが基本ですが、「それ以外のときはこの処理をする」と書きたいときは、elseを使います。
old = 22
if old < 20:
print("20歳未満の方はご利用できません。")
else:
print("ご利用ありがとうございます。")
elseには条件を指定しません。ifの条件がFalseのときに実行されます。
4. elifで複数の条件を分岐しよう
「20歳未満は利用不可、20歳ちょうどなら登録が必要、21歳以上はそのまま利用OK」など、複数の条件を分けたいときにはelifを使います。
old = 20
if old < 20:
print("20歳未満の方はご利用できません。")
elif old == 20:
print("登録が必要です。")
else:
print("ご利用ありがとうございます。")
elifは「else if」の略で、「もし別の条件なら」と書くときに使います。if → elif → elseの順で評価され、最初にTrueになった条件だけが実行されます。
5. if文で使える主な比較演算子
if文の条件では、以下のような比較演算子(ひかくえんざんし)をよく使います。
==:等しい(例:x == 10)!=:等しくない(例:x != 5)>:より大きい(例:x > 3)<:より小さい(例:x < 10)>=:以上(例:x >= 0)<=:以下(例:x <= 100)
たとえば、「数値が10ちょうどであればメッセージを表示したい」という条件は、x == 10と書きます。=(イコール1つ)ではなく==(イコール2つ)を使う点に注意しましょう。
6. 入力値を使ってif文を書く
ユーザーから入力された値に応じて処理を変えることもできます。以下は、input()を使った例です。
age = int(input("年齢を入力してください:"))
if age < 20:
print("未成年です。")
elif age == 20:
print("20歳ですね。")
else:
print("成人です。")
input()はキーボードから文字として値を受け取ります。int()で整数に変換してからif文で条件を判定しています。
7. if文のネスト(入れ子)に注意
if文の中にさらにif文を書くこともできます。これをネスト(入れ子)と呼びますが、深くなりすぎると読みにくくなるため注意しましょう。
score = 85
if score >= 60:
if score >= 80:
print("合格!しかも高得点です。")
else:
print("合格です。")
else:
print("不合格です。")
このように、複雑な条件のときはネストを使いますが、なるべくシンプルに保つのが読みやすさのコツです。
まとめ
Pythonのif文と条件分岐の基本を総復習しよう
この記事では、Pythonのif文を使った条件分岐の基本について、初心者の方にも分かりやすい形で解説してきました。 if文は「もし条件が成り立つなら、この処理を実行する」という考え方をプログラムで表現するための、とても重要な文法です。 Pythonでプログラムを書くうえで、if文はほぼ必ず使うと言ってもよいほど登場頻度が高く、 条件分岐を正しく理解できるかどうかが、プログラミング全体の理解度を大きく左右します。
if文の基本形はとてもシンプルで、「if 条件:」のあとに、条件がTrueのときに実行したい処理を書くだけです。 しかし、その裏側にはTrueとFalseという真偽値の考え方や、比較演算子の使い方、インデントによるブロック構造など、 Python特有の重要なルールが詰まっています。 これらをひとつずつ丁寧に理解していくことが、読みやすく正しいPythonコードを書くための近道になります。
else・elifを使った分岐処理の考え方
if文にelseを組み合わせることで、「条件に当てはまらなかった場合の処理」を明確に書くことができます。 これにより、プログラムの動きが分かりやすくなり、想定外の動作を防ぐことにもつながります。 また、elifを使うことで、複数の条件を順番に判定し、それぞれに異なる処理を割り当てることが可能になります。 if、elif、elseはセットで使われることが多く、実際の業務システムやWebアプリケーションでも頻繁に登場します。
elifを使う際の大切なポイントは、「上から順番に条件が評価され、最初にTrueになった処理だけが実行される」という点です。 そのため、条件の順番を誤ると、意図した処理が実行されないことがあります。 条件の内容と順序をしっかり考えながら書くことが、正しい条件分岐を作るコツです。
比較演算子と入力値を使った実践的なif文
if文では、数値や文字列を比較するために、さまざまな比較演算子を使います。
「等しい」「等しくない」「より大きい」「より小さい」といった条件を、
==や!=、>、<などで表現できるようになると、
プログラムの表現力が一気に広がります。
特に、代入で使う=と、比較で使う==を混同しないよう注意することが重要です。
また、input()を使ってユーザーから値を受け取り、その内容によって処理を分岐させる方法も学びました。
実際のプログラムでは、入力された値が文字列であることを意識し、
必要に応じてint()などで型変換を行ってからif文で判定する必要があります。
この一連の流れは、Python初心者が必ず通る大切なステップです。
if文を使ったサンプルプログラム
ここで、これまで学んだif文、elif、elseの考え方をまとめたサンプルプログラムを見てみましょう。 年齢によってメッセージを変える、基本的な条件分岐の例です。
age = int(input("年齢を入力してください:"))
if age < 18:
print("未成年です。")
elif age < 65:
print("成人です。")
else:
print("高齢者です。")
このようにif文を使うことで、条件に応じた柔軟な処理を簡単に書くことができます。 条件分岐を正しく使えるようになると、Pythonで作れるプログラムの幅が大きく広がります。
生徒「if文って、ただ条件を書くものだと思っていましたが、考えることが意外と多いんですね。」
先生「そうだね。条件の書き方や順番で、プログラムの動きが大きく変わるからね。」
生徒「elifを使うと、たくさんの条件も整理して書けるのが分かりました。」
先生「いい理解だよ。読みやすい条件分岐を書くことは、とても大切なんだ。」
生徒「入力値を使ったif文も、実際のアプリっぽくて楽しかったです。」
先生「その調子だね。if文はPythonの基礎中の基礎だから、これからも何度も使って慣れていこう。」