※こちらの記事は、プロスタ編集部が現在大変人気の高いPythonの文法記事を公開することで、皆様の学習にお役に立ちたい意図で投稿しております。
参考サイト:【Python入門】if文を使った条件分岐の書き方
【Python入門】if文を使った条件分岐の書き方
プログラミングの基本は、「条件分岐」と「繰り返し」です。繰り返しにはfor文または while文で行い、条件分岐にはif文を使います。他の言語ではswitch文という機能もありますが、Pythonではシンプルにif文のみが用意されています。
目次
1 Pythonのif文とは?
2 実際にif文を使ってみよう
3 複数の条件分岐の書き方
4 演算子について
4.1 比較演算子
4.2 論理演算子
Pythonのif文とは?
if 条件:
処理A
処理B
処理C
という書式です。
処理A、処理Bは条件がTrueの場合のみ実行されます。条件の場合に行う処理は、必ずインデントがされている必要があります。インデントされていない処理Cは、条件がTrueでもFalseでも実行されます。もし「条件」だったら、「すぐ下のインデントされた処理をする」と英語っぽく覚えてしまっても大丈夫です。
実際にif文を使ってみよう
your_age = 23
print('年齢確認')
if your_age >= 20:
print('二十歳以上です')
print('年齢確認 終了')
このコードは、your_ageの値により2種類に分岐されます。
(1)your_ageが20以上の場合
年齢確認
二十歳以上です
年齢確認
終了
と表示がされます。
(2)your_ageが20未満の場合
年齢確認
年齢確認
終了
と表示されます。
複数の条件分岐の書き方
今度は、条件分岐が複数の例です。
your_age = 41
if your_age >= 40:
print('40代')
elif your_age >= 30:
print('30代')
elif your_age >= 20:
print('20代')
この例であれば、「40代」と表示がされます。
条件をいくつか書きたくなった場合は、このように「elif」と続けていきます。
(elifは、else ifという意味です。「もしくは…」のように考えましょう)
さらに、どの条件にも当てはまらない場合のみ処理を行うことも可能です。
your_age = 15
if your_age >= 40:
print('40代')
elif your_age >= 30:
print('30代')
elif your_age >= 20:
print('20代')
else:
print('未成年')
一つ注意することは、if文は上から順番に条件を確かめていき、どれか一つに入れば、他のelif、elseは実行されません。
ですので、以下のコードは「your_age >= 20」がTrueとなってしまい、「20代」と表示されて終わってしまいます。
your_age = 50 # 50歳!
if your_age >= 20:
print('20代') # ここにきてしまう!
elif your_age >= 30:
print('30代')
elif your_age >= 40:
print('40代')
else:
print('未成年')
演算子について
比較演算子
「>=」や「==」という記号を使用しましたが、これは比較演算子と呼ばれるものです。
以下は全てif文の条件式として記述できます。
演算子 | 表示 |
---|---|
A==B | AとBが等しいならばTrue |
A != B | AとBが等しくないならばTrue |
A >= B | AがB以上ならばTrue (AとBが同じ値はTrue) |
A > B | AがBよりも大きいならばTrue (AとBが同じ値はFalse) |
A <= B | AがB以下ならばTrue (AとBが同じ値はTrue) |
A < B | AがBよりも小さいならばTrue (AとBが同じ値はFalse) |
A in B | BにAが含まれていればTrue(これは少し特殊で、Bがリスト、Aが文字列、等の場合によく使います) |
論理演算子
また、論理演算子と呼ばれるものもあります。こちらもif文の条件式として記述できます。
演算子 | 表示 |
---|---|
A and B | AとBがTrueならば、True |
A or B | AかBのどちらかがTrueならば、True |
not A | AがFalseであれば、True |
if文はプログラミングにおいて最も重要といっても過言ではないです。こちらの記事が皆様の理解に役立てばと思います。