前回の記事では if 文の基本的な記述方法について確認しました。今回は、if 文で記載した条件に合致しないケースの処理方法について確認します。
else 文とは
else文は「if 条件式 :」に合致しなかった場合に処理を実施できる文章です。つまり「もし、○○○ならば、×××する。そうでなければ、□□□する。」といった処理になります。

if 文に合致しなかったルートの処理としては2種類存在し、最初の条件式とは別の条件式を定義できる「elif文」とそれまでのルートに該当しなかったものを処理する「else文」とで存在します。elif文は略してあるのですが、要は「else if文」の事です。「その他ににもし・・・」という処理を実施できます。
else文を使ったif文の書き方
それでは「else文」並びに、「elif文」を用いた条件分岐の書き方について確認します。

最初に if文を記載し、その後ろにelif文、最後にelse文となります。if文、else文は1つだけ記載するのに対し、elif文は複数個記載することができます。
これをチャートにしてみるとこのような流れでプログラムを処理するか否かを判定していきます。

これで処理のイメージはつかめたでしょうか。上を見てもらえればわかると思いますが、例えば条件①と条件②がTrueになっていたとしても上から処理を行いTrueだった場合は条件式の処理をそのままスキップしますので、処理①と処理②が両方実行されることはなく、処理①のみ処理されます。条件式を連ねていくと複雑になりやすいので、複雑な条件分岐等を考える際は一度チャートにしてみて、どのようにif文を組んだらよいか考えると良いと思います。
else文を使った条件分岐の書き方
最後に実際の書き方について確認します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#□□□文字列を判定するプログラム□□□ weather = "snow" if weather == "Sunny": print("天気は晴れです。") elif weather == "cloudy": print("天気は曇りです") elif weather == "rainy": print("天気は雨です") else : print("特殊な天気のようです。") #■■■数値を判定するプログラム■■■ yen = 120 if yen > 1000: print("それなりの食事ができますね。") elif yen > 500: print("マックとかだった良いかもしれません") elif yen == 120: print("ジュースしかかえませんね。。。") else : print("帰りましょう。") |
上半分では文字列を判定して文章を出力する、下半分では数値を判定して文章を出力する内容になっております。実行すると分ると思いますが、文字列ではelseの文章が、数値では3個目の文章が出力されます。Colabで上記を試してみていろんな条件式を作ってみてください。
以上でif文については完了です。
条件分岐は増えれば増えるほど処理が複雑になるので、余計なif文はないか、拾いきれない処理はないかを図や表にしてしっかりと整理することが大切です。if文はバグの原因になりやすいので細心の注意を払って実装したいですね。
今回はここまでです。お疲れ様でした。
コメント