Pythonでは、条件によって処理を分けることがよくあります。
そのときに使うのがif、else、elifです。
今回は、elseとelifにしぼって、考え方を確認します。

この記事でわかること

  • elseの役割
  • elifの役割
  • 条件が増えたときの考え方
  • 条件は上から順に判定されること

完成コード(まず見てみよう)

score = 75

if score >= 80:
    print("合格です")
elif score >= 60:
    print("再試験です")
else:
    print("不合格です")

このコードはそのまま実行できます。
点数によって表示が変わります。

テーマの説明(やさしく)

elseは「それ以外の場合」をまとめて書くためのものです。
ifの条件に当てはまらなかったときに使われます。

elifは「別の条件も確認したいとき」に使います。
ifだけだと、条件は一つしか書けません。
elifを使うと、条件を追加できます。

大事なのは、条件は上から順に確認される点です。
一度当てはまると、その下は見ません。

具体例・補足説明

合格か不合格だけを判定するなら、ifとelseで足ります。

score = 50

if score >= 60:
    print("合格です")
else:
    print("不合格です")

点数ごとに結果を変えたい場合はelifを使います。

score = 90

if score >= 80:
    print("A評価です")
elif score >= 70:
    print("B評価です")
elif score >= 60:
    print("C評価です")
else:
    print("不合格です")

この場合、上から順に条件を確認します。
90点は最初の条件で決まります。

おじちくワンポイント

条件が増えたら、上に書く条件ほど厳しくします。
大きい数字から並べると考えやすいです。
順番を意識すると、バグを減らせます。

よくある勘違い・注意点

  • elifは何回でも書けます
  • elseは最後に一度だけ書きます
  • 条件の順番を間違えると、意図しない結果になります

練習問題

問題1
点数が90以上なら「とても良い」、それ以外は「がんばろう」と表示するコードを書いてみましょう。

問題2
点数が80以上、60以上、60未満で表示を変えるコードを書いてみましょう。

まとめ

  • elseは「それ以外」の処理を書く
  • elifは条件を追加するときに使う
  • 条件は上から順に判定される
  • 条件の並び順がとても大切