【Python第4回】条件分岐:if文による数値判定
特定の条件が満たされているかどうかで、プログラムの処理の実行を切り替える「条件分岐(if文)」の基礎と、Python特有の最重要ルールである「インデント」を習得します。
1. 条件分岐(if文)の基本的な考え方
プログラムは通常、上から下へと一直線に進んでいきますが、実務のアプリでは「もし点数が80点以上なら『合格』、それ以外なら『不合格』」といった、条件によって進む方向を変えたい場面が必ず登場します。
この進路切り替えを実現するのが `if文` です。
2. 条件を作るための比較演算子
条件の判定には、以下の比較演算子を使用して真偽値(`True`/`False`)を導き出します。
- a == b: a と b が等しい
- a != b: a と b が等しくない
- a > b: a は b より大きい
- a >= b: a は b 以上である
- a <= b: a は b 以下である
3. Pythonの最重要ルール:インデント
他の言語(JavaScriptなど)では、if文の中身を波括弧 `{ }` で囲みますが、Pythonには波括弧がありません。その代わりに、**「インデント(行頭の字下げ)」**によってどこまでがif文のブロックなのかを判定します。
条件式を書いた行の末尾にコロン `:` を打ち、次の行からは**「半角スペース4つ分」の字下げ**をしてコードを書く必要があります。インデントの深さがずれていると、Pythonは構文エラー(IndentationError)を出して動きません。
4. 条件によって判定を変えるコード
以下のコードは、変数 `score` の数値に応じて「優秀」「合格」「不合格」の3つの表示パターンへきれいに分岐させるサンプルコードです。
score = 85 if score >= 90: print("優秀な成績です!") # インデント(半角スペース4つ)を入れて書く elif score >= 70: print("合格です。") # elif は「またはもし〜なら」という意味 else: print("不合格です。") # 上記のどれにも当てはまらない場合
💡 elif と else の使い方
`if` のすぐ後ろに別の条件を追加したい場合は **`elif`** を使用します(他言語の `else if` に相当します)。また、すべての条件に一致しなかった場合の最終受け皿として、末尾に **`else`** を記述します。いずれの文末にもコロン `:` を忘れないでください。
Pythonのif文などのブロック構造を示すために不可欠な、行頭を「半角スペース4つ」下げるコードの記述規則のことを何と呼ぶでしょうか?
※この問題の解答と解説は、ページ最下部(まとめの前)に掲載しています。
5. まとめと次回予告
第4回の講義はお疲れ様でした!今回の重要ポイントを振り返りましょう。
- `if`, `elif`, `else` を使ってプログラムを複数の条件分岐へ振り分けられる。
- Pythonの分岐の定義文の末尾には、必ずコロン `:` を打つ。
- 分岐内の実行処理には、必ず「インデント(半角スペース4つ)」を入れる。
次回(第5回)は、リストの中身を順に取り出したり指定回数のループを回す「繰り返し処理(for文とwhile文)」について学びます。お楽しみに!
📖 Pythonの基礎を全10回でマスターする
🔑 第4回 理解度チェックの解答と解説
【解説】
正解は **`インデント`** (または `字下げ`)です。 Pythonでは他の言語のように中括弧 `{ }` で囲む代わりに、見た目の美しさと論理的な階層構造を一致させるために「インデント」を言語設計自体に強制的な構文ルールとして組み込んでいるのが最大の特徴です。