if文
何かを基準に処理を分けたい場合に、if文を用いる。
記述方法は**if 条件式 :**である。
条件式がTrueの時に、if文内の処理が実行される。
(条件式がTrueとは、例えば5>3など。一方でFalseになるときは5<3の時など)
a=1
b=3
if a>2 : #条件式が満たされない
print("a")
if b>2 : #条件式が満たさる
print("b")
>>>b
elif文
上記のようにif文だけで条件を分岐することは可能であるが、
例えば、Aかどうか、AでないならBなのか、それ以外なのか
といった場合に、上のif文のみで記述すると以下になる。
m=3
if m==A : # mがAであるかどうか
print("a")
if m!=A and m==B: # mがAでなく、mがBであるか
print("b")
if m!=A and m!=B: # mがAでなく、mがBでもない
print("c")
ただ、この条件分岐は一番最初にAかどうかで判断してるにもかかわらず、
次の条件式にもAでないという事の条件が入ってくる。(二度手間)
これを改善するのがelifである。
elifはifとセットで使われる。決してelif単体で使用されることはない。
ifではじかれた条件に対して次の条件を適用するのが、elifである。
elifは一つのifに対して複数回記述することが出来るが、あるところで条件を満たした場合
それ以降のelif文(else文も含めて)は評価されない。
記述方法はelif 条件式 :である
m=3
if m==A : # mがAであるかどうか
print("a")
elif m==B: # mがAでなく、mがBであるか
print("b")
elif m!=B: # mがAでなく、mがBでもない
print("c")
else文
先の例で、最後の判定を考える。
最後の判定はAでもBでもない場合に出力される。
要するに、すべての条件の外にある=その他の場合に出力される結果と考えることが出来る。
このような、ある条件を満たさないもの全てに対して処理を行いたい場合にelseを使う。
記述方法はelif :である。
先の例をこれを使って書き換えると以下になる。
m=3
if m==A : # mがAであるかどうか
print("a")
elif m==B: # mがAでなく、mがBであるか
print("b")
else: # mがAでなく、mがBでもない → その他の場合
print("c")