カテゴリ: Python 更新日: 2025/12/12

Pythonのif文の基本!条件分岐の書き方とelifの使い方

Pythonのif文の基本!条件分岐の書き方とelifの使い方
Pythonのif文の基本!条件分岐の書き方とelifの使い方

先生と生徒の会話形式で理解しよう

生徒

「Pythonで、条件によって処理を変えたいときはどうすればいいんですか?」

先生

「それにはif文という条件分岐の仕組みを使います。Pythonではとてもシンプルに書けますよ。」

生徒

「あと、elifっていうのも見たことがあります。ifと何が違うんですか?」

先生

「その違いも含めて、if文の基本から順番にやさしく解説していきましょう。」

-

1. Pythonのif文とは?条件に応じて処理を分ける

1. Pythonのif文とは?条件に応じて処理を分ける
1. Pythonのif文とは?条件に応じて処理を分ける

if文(いふぶん)とは、「もし〜なら〜する」というように、条件に応じてプログラムの動きを分ける方法です。これを条件分岐といいます。

たとえば「年齢が20歳以上なら入場OK、そうでなければNG」といった判断ができます。現実の「合格・不合格」「ログインOK・NG」などの判定にも同じ考え方が使われます。

まずは、条件が当てはまったときだけ処理が動く、いちばん基本の形を見てみましょう。


age = 18
if age >= 20:
    print("入場できます")

(何も表示されない)

解説:ifの後ろには「条件」を書きます。この例の条件はage >= 20(ageが20以上)です。条件が正しいときはTrueになり、字下げ(インデント)された行が実行されます。逆に、条件が正しくないときはFalseになり、ifの中の処理はスキップされます。

今回はageが18なので条件を満たさず、printが実行されないため何も表示されません。

2. elseを使って「そうでないとき」の処理を書く

2. elseを使って「そうでないとき」の処理を書く
2. elseを使って「そうでないとき」の処理を書く

ifの条件に当てはまらなかった場合に、別の処理をしたいときはelseを使います。

elseは「そうでなければ」という意味で、ifがFalseだったときにだけ実行されます。つまり、必ずどちらか一方(if側かelse側)だけが動くので、結果がわかりやすくなります。


age = 18
if age >= 20:
    print("入場できます")
else:
    print("未成年のため入場できません")

未成年のため入場できません

解説:この例ではageが18なので、age >= 20はFalseになります。そのため、ifの中のprint("入場できます")は実行されず、代わりにelseの中が実行されて「未成年のため入場できません」と表示されます。

「条件に合うときはA、合わないときはB」と2択で処理を分けたい場面(合格/不合格、ログイン成功/失敗など)で、elseはよく使われます。

3. elifで条件をさらに追加する

3. elifで条件をさらに追加する
3. elifで条件をさらに追加する

elifは「else if」の略で、「もしこれなら…それでもなければ…」と条件を追加して分岐できる書き方です。ifだけだと2択になりがちですが、elifを使うと「Aならこう、Bならこう、それ以外は…」という形にできます。

ポイントは、上から順番にチェックして、最初に当てはまった1つだけが実行されることです。つまり、途中で条件に当てはまったら、その下のelifはもう見に行きません。


age = 17
if age >= 65:
    print("シニア料金です")
elif age >= 20:
    print("通常料金です")
else:
    print("学生料金です")

学生料金です

解説:この例では、まずage >= 65を確認しますが17なのでFalseです。次にage >= 20もFalseになります。最後まで当てはまらなかったため、elseが実行されて「学生料金です」と表示されます。

このように、elifは「条件がいくつかあるときに順番に判定したい」場面(年齢区分、点数評価、入力内容のチェックなど)でよく使われます。

4. インデント(字下げ)がとても重要!

4. インデント(字下げ)がとても重要!
4. インデント(字下げ)がとても重要!

Pythonでは、インデント(行の先頭をスペースで下げること)が文法の一部です。

if文やelse文のあとには「:」(コロン)を書き、その次の行は必ず字下げして書きます。

インデントがないとエラーになります。


x = 10
if x > 5:
    print("5より大きい")
print("条件とは関係ない行")

5より大きい
条件とは関係ない行

print("5より大きい")はifの条件に従いますが、その下のprint("条件とは関係ない行")は常に実行されます。

-

5. 複数の条件を同時にチェックする(and / or)

5. 複数の条件を同時にチェックする(and / or)
5. 複数の条件を同時にチェックする(and / or)

if文では、and(かつ)or(または)を使って、複数の条件を組み合わせることもできます。


age = 22
student = True

if age < 25 and student:
    print("学割が使えます")

学割が使えます

andは両方が当てはまるとき、orはどちらかが当てはまればOKです。

6. 数値以外でも使えるif文の例

6. 数値以外でも使えるif文の例
6. 数値以外でも使えるif文の例

if文は数字だけでなく、文字列やブール値(TrueFalse)にも使えます。


answer = input("Pythonは好きですか? (yes/no):")
if answer == "yes":
    print("ありがとうございます!")
else:
    print("これから好きになってくれると嬉しいです")

Pythonは好きですか? (yes/no):yes
ありがとうございます!

7. if文のネスト(入れ子)にも注意

7. if文のネスト(入れ子)にも注意
7. if文のネスト(入れ子)にも注意

if文の中にさらにif文を書くこともできます。これをネスト(入れ子)といいます。


age = 25
gender = "male"

if age >= 20:
    if gender == "male":
        print("成人男性です")

成人男性です

ネストが深くなると見にくくなるので、必要なときだけ使うのがポイントです。

まとめ

まとめ
まとめ

Pythonのif文は、条件によって処理を分岐させるための最も基本でありながら重要な文法です。「もし〜なら〜する」といった形で処理の流れを制御できるため、実際のプログラムでも頻繁に使われます。たとえば、年齢や入力内容によって出力を変える、ログインの成否を判定する、複数の選択肢の中から適切な処理を選ぶなど、実生活に近い場面をコードで表現する際に大活躍します。

今回の記事では、if文の基本から始まり、elseを使った「そうでなければ」の書き方、elifによる複数条件の分岐、さらにはandやorで条件を組み合わせる方法まで、丁寧に段階を追って紹介しました。特にif文はインデント(字下げ)が文法の一部になっているため、見た目だけでなく動作にも直接影響します。スペースを入れ忘れたり、インデントがズレていたりするとエラーになることも多いので、習慣的に正しい書き方を身につけておくと安心です。

また、Pythonでは数値だけでなく、文字列やTrue/False(ブール値)を条件に使うこともできます。これにより、ユーザーの入力に応じて動作を変えるインタラクティブなプログラムも作れるようになります。さらに、if文の中に別のif文を入れる「ネスト(入れ子)」も理解しておけば、より複雑な条件判定も書けるようになり、実用的なコードが書ける力がついていきます。

最後に、Pythonのif文はシンプルで直感的に書ける反面、条件の設計ミスやインデント忘れによるエラーが起こりやすいため、最初のうちはゆっくり丁寧にコードを書くことが大切です。以下に、この記事で学んだ知識を総復習するような簡単なサンプルを紹介しておきます。

おさらいサンプル:年齢と会員種別でメッセージを出し分け


age = 30
member = "premium"

if age < 18:
    print("未成年のため制限があります")
elif member == "premium":
    print("プレミアム会員向けサービスを表示します")
else:
    print("一般会員向けの内容を表示します")

このように、複数の条件を組み合わせて使えば、実際のサービスや画面遷移にも応用できます。簡単な条件式から始めて、少しずつ複雑なロジックも自分で書けるようになると、Pythonプログラミングが一段と楽しく感じられるでしょう。

先生と生徒の振り返り会話

生徒

「先生、今回のif文のまとめですごく理解が深まりました!」

先生

「よかったね。if文は、条件に応じて処理を分けるときの基本だから、しっかり身につけておくと今後に活かせるよ。」

生徒

「elseやelifを使うことで、条件が複数あっても読みやすく書けるって分かりました!」

先生

「そうそう、elifを使えば「もし〜なら〜、それでもなければ〜」って順番に判断できるし、elseで最終的な処理も書けるから便利なんだ。」

生徒

「あと、andとかorで複数条件を組み合わせたり、ネストを使って細かく条件を書いたりするところも参考になりました!」

先生

「実務でもよく使うテクニックだから、ぜひ繰り返し練習してみて。エラーが出たらインデントや条件の順番を見直すと解決することが多いよ。」

生徒

「はい、もっと自分でもいろいろ試してみたいと思います!」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonのif文とは何ですか?基本的な使い方を教えてください

Pythonのif文は「もし条件が真ならば、その処理を実行する」という条件分岐の構文です。特定の条件に応じて処理を変えることができるため、プログラムの制御に欠かせない重要な要素です。
コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
New1
PHP
PHPのCookieセキュリティを完全ガイド!初心者でもわかるSecureとHttpOnlyの使い方
New2
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
New3
PHP
PHPのSQLインジェクション対策を完全解説!初心者でも安全にデータベースを扱う方法
New4
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
Java&Spring記事人気No2
PHP
初心者向けPHPでMySQLからデータを取得する方法(SELECT文)完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのリストの重複を削除する方法を解説!初心者向けにsetとdict.fromkeysの使い方をやさしく説明
No.4
Java&Spring記事人気No4
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.5
Java&Spring記事人気No5
PHP
PHPのXSS対策を完全ガイド!初心者でもわかる安全なWebアプリの作り方
No.6
Java&Spring記事人気No6
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.7
Java&Spring記事人気No7
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
No.8
Java&Spring記事人気No8
PHP
PHPのOAuth認証をやさしく解説!Google・Facebookログインを初心者向けに実装しよう
-
-