Pythonの条件分岐は、プログラムに「もし○○なら△△する」といった判断を組み込むために欠かせない機能です。 前回はif文とelseを使ったシンプルな条件分岐を学びましたが、現実のプログラムでは「複数の条件」を順番に判定したいことがよくあります。
そのときに役立つのがelif(else ifの略)です。 elifを使えば、いくつも条件をチェックし、最初に当てはまった処理だけを実行することができます。さらに最後にelseを使えば「どの条件にも当てはまらない場合」の処理をまとめて記述できます。
このページでは、IT初心者の方でも理解できるように、elifとelseを組み合わせた複数条件分岐を実際のサンプルコードとともに解説していきます。
Pythonのif、elif、elseを組み合わせた基本構文は次の通りです。
if 条件1:
# 条件1がTrueのときに実行される処理
elif 条件2:
# 条件1がFalseで、条件2がTrueのときに実行される処理
elif 条件3:
# 条件1と条件2がFalseで、条件3がTrueのときに実行される処理
else:
# 上記のどの条件にも当てはまらないときに実行される処理
ポイントは次の通りです。
これらを踏まえて、いくつかのサンプルコードを見てみましょう!
ここでは、学生の成績を評価するプログラムを作成します。成績に応じて、A、B、C、D、Fの評価を行います。
# 成績を入力
score = int(input("成績を入力してください(0〜100): "))
# 評価の判定
if score >= 90:
grade = 'A'
elif score >= 80:
grade = 'B'
elif score >= 70:
grade = 'C'
elif score >= 60:
grade = 'D'
else:
grade = 'F'
print(f"あなたの評価は: {grade}")
まず、input() でユーザーに点数を入力してもらい、int() で整数に変換します 最初の if score >= 90: で90点以上なら「A」 それ以外なら次の elif score >= 80: を評価します 80点以上なら「B」70点以上なら「C」、60点以上なら「D」 どの条件にも当てはまらない(つまり60未満)なら else で「F」
このように、elifを使うと上から順に条件をチェックし、最初に当てはまったものだけが実行される仕組みになります。
次は、elifとelseを使った練習問題に挑戦しましょう。 ユーザーに気温を入力してもらい、適切な服装を提案するプログラムを書いてみます。
【条件】
# 温度を入力
temperature = int(input("気温を入力してください(度): "))
# 服装の提案
if temperature >= 30:
outfit = '短パンとTシャツ'
elif temperature >= 20:
outfit = '半袖シャツとジーンズ'
elif temperature >= 10:
outfit = '長袖シャツとジャケット'
else:
outfit = 'コートを着る'
print(f"おすすめの服装は: {outfit}")
まず、input関数を用いて、temperature に入力された気温を格納します。 if temperature >= 30: で真夏日を判定し「短パンとTシャツ」 20度以上なら「半袖シャツとジーンズ」10度以上なら「長袖シャツとジャケット」 それ以外(10度未満)は「コートを着る」 のように条件分岐を記述します。 最後にprint文で出力をして完了です。それぞれの条件分岐内でprint文を実行しても問題ありません。
このように、elifとelseを活用すると「複数の条件を整理して、シンプルに記述」できます。
初心者の方がよくやってしまうのが、条件を全部ifで書いてしまうことです。
たとえば次のような書き方だと、条件をすべてチェックしてしまいます。
# 成績を入力
score = int(input("成績を入力してください(0〜100): "))
# 判定(ifを2つ書いた場合)
if score >= 90:
grade = 'A'
if score >= 80:
grade = 'B'
print(f"あなたの評価は: {grade}")
この場合、90点を入力しても「A」だけでなく「B」にも当てはまってしまう可能性があり、正しく動きません。
一方、elifを使えば「最初に当てはまった条件だけが実行される」 ので、余計な判定を避けられます。 これはプログラムの可読性を上げ、エラーを減らす大切なポイントです。
elifとelseを使うことで、複数の条件を効率的に処理することができます。条件分岐を活用することで、プログラムの柔軟性が向上し、ユーザーの入力に応じた適切な反応を実装することが可能になります。次のステップとして、条件のネストやループなど、さらに複雑な構造を学んでいきましょう。