困っている人
- if文の基本を知りたい
- if文の具体的な使い方を知りたい
- if文の応用的な使い方も教えてほしい
- if文の基礎が分かる
- if文の具体的な使い方(if〜elif〜else)が分かる
- if文の応用的な使い方(and・or・not)が分かる
Pytohn|if文とは
if文とは、条件分岐に使用する構文のことです。
ifは英語で「もし〇〇なら」という意味で使用しますがPythonでも同じです。
「もし〇〇なら」の〇〇を記述し、その判定結果(条件が成立しているか)によって、処理を分岐させることができます。
Python|if文の基本
if文の基本は以下のとおりです。[B.条件式が成立した時の処理]はインデント(半角スペース×4)を空けて記述してください。
if [A.条件式]:
[B.条件式が成立した時の処理]
- [A.条件式]を判定し、成立した時は[B.条件式が成立した時の処理]を実行します。
- 一方、[A.条件式]を判定し、成立しなかった時は[B.条件式が成立した時の処理]はスキップします。
Python|if文の具体例
xの値が10の時、「xの値は10」と出力するコードを実行
x=10
if x==10:
print('xの値は10')
- xに10を代入
- 条件式(x==10)を判定します→成立
- 成立した時は「xの値は10」と出力します
- 「x = 10」は、xに10を代入するという意味です
- 「x == 10」は、xは10と等しいという意味です
- Python では代入の符号(=)と条件式の符号(==)はそれぞれ別の意味を持っています
Python|比較演算子
条件式の符号(==)のような、値を比較する演算子のことを比較演算子といいます。Pythonでよく使用する比較演算子は次のとおりです。
比較演算子 | 意味 |
> | 左よりも右の方が小さい |
< | 左よりも右の方が大きい |
== | 左と右は等しい |
!= | 左と右は等しくない |
>= | 左よりも右の方が小さいか、等しい |
<= | 左よりも右の方が大きいか、等しい |
Python|if文 〜 else文の基本
else文を使うと、条件式が成立しなかった時の処理を実行できます。
if [A.条件式]:
[B.条件式が成立した時の処理]
else:
[C.条件式が成立しなかった時の処理]
- [A.条件式]を判定し、成立した時は[B.条件式が成立した時の処理]を実行します。
- 一方、[A.条件式]を判定し、成立しなかった時は[C.条件式が成立した時の処理]を実行します。
Python|if文 〜 else文の具体例
xの値が10の時「xの値は10」と出力し、それ以外は「xの値は10以外」と出力するコードを実行
x=20 if x==10: print('xの値は10') else: print('xの値は10以外')
- 変数名(x)に変数(20)を代入
- 条件式(x==10)を判定します→成立
- 成立した時は「xの値は10」と出力します
- 成立しなかった時は・・
- 「xの値は10以外」と出力します
Python|if文 〜 elif文 〜 else文の基本
elif文を使うと条件式を追加できるので、処理をさらに分岐させることができます。elif は 「else if」 の略称です。
if [A.条件式]:
[B.条件式が成立した時の処理]
elif [C.条件式]:
[D.条件式が成立した時の処理]
else:
[E.条件式が成立しなかった時の処理]
- [A.条件式]を判定し、成立した時は[B.条件式が成立した時の処理]を実行します。
- 一方、[A.条件式]を判定し、成立しなかった時は[C.条件式]に判定が移ります。成立した時は[D.条件式が成立した時の処理]を実行します。
- [A.条件式][C.条件式]が両方とも成立しなかった時は、[E.条件式が成立しなかった時の処理]を実行します。
Python|if文 〜 elif文 〜 else文の具体例
xの値が10の時「xの値は10」と出力し、xの値が20の時「xの値は20」と出力し、それ以外の時は「xの値は10・20以外」と出力するコードを実行
x=20 if x==10: print('xの値は10') elif x==20: print('xの値は20') else: print('xの値は10・20以外')
- 変数名(x)に変数(20)を代入
- 条件式(x==10)を判定します
- 成立した時は「xの値は10」と出力させます
- 条件式(x==20)を判定します→成立
- 成立した時は「xの値は20」と出力します
- 成立しなかった時は・・
- 「xの値は10・20以外」と出力します
Python|if文 〜 if文 〜 else文の基本
if文の中にさらにif文を記述することで、2階層の条件分岐を実行できます。
if [A.条件式]:
if [B.条件式]:
[C.条件式が成立した時の処理]
else:
[D.条件式が成立しなかった時の処理]
else:
[E.条件式が成立しなかった時の処理]
- [A.条件式]を判定し、成立した時は[B.条件式]に判定が移ります
- 一方、[A.条件式]が成立しなかった時は、[E.条件式が成立しなかった時の処理]を実行します
- [A.条件式]かつ[B.条件式]が成立した時は、[C.条件式が成立した時の処理]を実行します
- 一方、[B.条件式]が成立しなかった時は、[D.条件式が成立しなかった時の処理]を実行します
Python|if文 〜 if文 〜 else文の具体例
xの値が30の時「xの値は30」と出力し、xの値が10以上かつ30ではない時「xの値は10以上」と出力し、それ以外の時は「xの値は10より小さい」と出力するコードを実行
x=20 if x>=10: if x==30: print('xの値は30') else: print('xの値は10以上') else: print('xの値は10より小さい')
- 変数名(x)に変数(20)を代入
- 条件式(x>=10)を判定します→成立
- 成立した時は、条件式(x==30)を判定します
- 成立した時は「xの値は30」と出力します
- 成立しなかった時は・・
- 「xの値は10以上」と出力します→成立
- 条件式(x>=10)が成立しなかった時は・・
- 「xの値は10より小さい」と出力します
Python|if文 + and演算子
if文にand演算子を組み合わせることで、複数の条件式で処理を分岐させることができます。
if [A.条件式] and [B.条件式]:
[C.条件式が成立した時の処理]
else:
[D.条件式が成立しなかった時の処理]
- [A.条件式]と[B.条件式]の両方が成立した時、[C.条件式が成立した時の処理]を実行します。
- 一方、[A.条件式]と[B.条件式]の両方が成立しなかった時は、[E.条件式が成立しなかった時の処理]を実行します。
Python|if文 + and演算子の具体例
xの値が10以上かつ30以下の時「xの値は10〜30の間」と出力し、それ以外の時は「xの値は10〜30の間以外」と出力するコードを実行
x=20 if x>=10 and x<=30: print('xの値は10〜30の間') else: print('xの値は10〜30の間以外')
- 変数名(x)に変数(20)を代入
- 条件式(x>=10)と、条件式(x<=30)の両方が成立しているか判定します→成立
- 成立した時は「xの値は10〜30の間」と出力します
- 成立しなかった時は・・
- 「xの値は10〜30の間以外」と出力します
Python|論理演算子
論理演算子はブール演算子とも呼ばれ、if文の条件分岐において様々な条件式を記述する時に使用します。
論理演算子には以下の図の通り、and(論理積)・or(論理和)・not(否定)の3種類があります。
Python|if文 + or演算子
if文にor演算子を組み合わせることで、複数の条件式のうち少なくとも1つ以上の条件式が成立した時に、処理を実行することができます。
if [A.条件式] or [B.条件式]:
[C.条件式が成立した時の処理]
else:
[D.条件式が成立しなかった時の処理]
- [A.条件式]あるいは、[B.条件式]のどちらか一方が成立した時、[C.条件式が成立した時の処理]を実行します。
- 一方、[A.条件式]と[B.条件式]がどちらも成立しなかった時は、[D.条件式が成立しなかった時の処理]を実行します。
Python|if文 + or演算子の具体例
xの値が10あるいは20の時「xの値は10、あるいは20」と出力し、それ以外の時は「xの値は10、20以外」と出力するコードを実行
x=20 if x==10 or x==20: print('xの値は10、あるいは20') else: print('xの値は10、20以外')
- 変数名(x)に変数(20)を代入
- 条件式(x==10)と、条件式(x==20)がどちらか一方が成立しているか判定します→成立
- 成立した時は「xの値は10、あるいは20」と出力します
- 成立しなかった時は・・
- 「xの値は10、20以外」と出力します
Python|if文 + not演算子
if文にnot演算子を組み合わせることで、条件式が成立しなかった時(通常のif文とは反対)の処理を実行することができます
if not [A.条件式]:
[B.条件式が成立しなかった時の処理]
else :
[C.条件式が成立した時の処理]
- [A.条件式]が成立した時、[B.条件式が成立しなかった時の処理]を実行します
- 一方、[A.条件式]が成立した時は、[C.条件式が成立した時の処理]を実行します。
Python|if文 + not演算子の具体例
xの値が10ではない時「xの値は10以外」と出力し、それ以外の時は「xの値は10」と出力するコードを実行
x=20 if not x==10: print('xの値は10以外') else: print('xの値は10')
- 変数名(x)に変数(20)を代入
- 条件式(x==10)を判定します→不成立
- 成立しなかった時は「xの値は10以外」と出力します
- 成立した時は・・
- 「xの値は10」と出力します
Python|if文のまとめ
if文では、条件式(比較演算子・論理演算子)を組み合わせることで、かなり自由度の高い条件分岐ができるようになります。
else文を使うことで際限なく処理を枝分かれすることもできるし、if文の中にさらにif文を記述することもできるので、どんな複雑な条件式でも対応可能です。if文はよく使う構文なので、基本をしっかりマスターしてください。
1点注意したいのは、同等条件(「==」)を「=」と区別することです。Pythonでは「=」は代入という意味なので注意してください。