elif | 条件分岐 | Python予約語 徹底解説 使い方と注意点

現在作成中です。今後加筆修正してまいります。
スポンサーリンク
スポンサーリンク

Pythonの予約語「elif」の解説

elifとは何か

elifは、Pythonの条件分岐に使用される予約語で、「else if」の略です。if文とelse文の間に追加の条件を設定するために使います。複数の条件を順番にチェックし、最初にTrueと評価された条件のブロックを実行します。elifは、ifFalseのときに次の条件を確認するために役立ちます。

elifの基本的な使い方

以下は、elifを使った条件分岐の基本的な例です。

score = 85

if score >= 90:
    print("Aランク")
elif score >= 80:
    print("Bランク")
elif score >= 70:
    print("Cランク")
else:
    print("Dランク")

このコードでは、scoreの値に応じてランクが決まります。最初にif文でscore >= 90がチェックされ、Trueであれば「Aランク」が表示されます。Falseの場合は次にelifで条件をチェックし、score >= 80Trueなら「Bランク」が表示されます。このように、複数の条件を順番に確認していきます。

elifを使った複数の条件分岐

elifは、条件が複数ある場合に便利です。以下に、温度に応じて異なるメッセージを表示する例を示します。

temperature = 30

if temperature >= 35:
    print("非常に暑い")
elif temperature >= 25:
    print("暑い")
elif temperature >= 15:
    print("快適")
elif temperature >= 5:
    print("少し寒い")
else:
    print("寒い")

このコードでは、気温に応じて異なるメッセージが表示されます。最初に気温が35度以上であれば「非常に暑い」、25度以上であれば「暑い」という具合に、条件が順次チェックされます。

elifの動作の流れ

elifは、if文の条件がFalseである場合に次の条件を評価します。最初にTrueとなる条件が見つかると、そのブロックが実行され、残りの条件は無視されます。以下の動作の流れを表にまとめます。

条件の状態 動作
ifの条件がTrue ifのブロックが実行され、elifelseは無視される
ifの条件がFalseで、elifの条件がTrue そのelifブロックが実行され、それ以降の条件は無視される
すべてのifelifFalse elseブロックが実行される

elifとelseの違い

elifは条件を持つのに対して、elseは条件を持ちません。elseはすべてのifおよびelifの条件がFalseのときに実行されるため、必ず最後に書きます。一方、elifは何度でも使うことができ、複数の条件をチェックします。

複雑な条件式の例

より複雑な条件分岐を実現するために、elifを使用して複数の条件を組み合わせることができます。以下の例では、ユーザーの年齢と身長に基づいてメッセージを表示します。

age = 20
height = 160

if age >= 18 and height >= 170:
    print("大人で、身長も高い")
elif age >= 18 and height < 170:
    print("大人だが、身長は低め")
elif age < 18 and height >= 170:
    print("子供だが、身長は高い")
else:
    print("子供で、身長も低い")

このコードでは、年齢と身長の両方に基づいてメッセージを表示します。複数の条件が組み合わされており、and演算子で条件を組み合わせて、elifで条件分岐を行っています。

まとめと注意点

  • elifは複数の条件を順次チェックするために使われ、ifFalseのときに次の条件を評価します。
  • 複数のelifを使って、条件分岐を柔軟に設定することができます。
  • elifは、最初にTrueと評価された条件で処理が終了し、それ以降の条件は無視されます。
  • elifの条件がすべてFalseであった場合、elseが実行されます。
  • elifを使いすぎると、コードが複雑になる可能性があるため、条件の簡潔さを心がけましょう。
Amazonロゴ
   
ad.価格範囲を指定して商品を探せます。セールで助かる便利ツール
予約語集
スポンサーリンク
このページをメモ、または、シェア