【Python入門】if文の使い方

Pythonの勉強をしていて、このような悩みを抱えていませんか?

ifって、どうやって使うの?

この記事では、Pythonのif文について現役エンジニアが分かりやすく解説していきます。

他にも【Python入門】for文の使い方で「for」について分かりやすく解説しているので、お時間がある方はご確認ください。

また、Pythonをもっと詳しく勉強したいという方は、【超厳選】20代におすすめのプログラミングスクール3選!を参考にしてください。

他にも無料でプログラミングスクールを受講したいという方は、【完全無料】0円で学べるプログラミングスクールを紹介【大学生向け】を参考にしてください。

if文の書き方

Pythonでは、条件分岐を記述する際に「if」を使用します。

ifの書き方は、以下の通りです。

if 条件式1:
    条件式がtrueの時に実行する処理
elif 条件式2:
    条件式1がfalse、条件式2がtrueの時に実行する処理
else:
    全ての条件式がfalseの時に実行する処理

elif」や「else」は書かなくてもOKです。

また、「elif」を複数個記述することで、複雑な条件式を表現することが出来ます。

それでは、「if文の書き方」を使ってみましょう。

まずは、例コードを以下に記載するので、コピペして実行してください。

num = 10

# 変数numが10より小さい
if(num < 10):
    print("numは10より小さい")
# 変数numが10と等しい
elif (num == 10):
    print("numは10と等しい")
# 上記条件式が全てfalse
else:
    print("numは10より大きい")

例コードを実行すると、次のような出力が得られます。

numは10と等しい

それでは、例コードについて解説していきます。

解説するために、「if文の書き方」をおさらいしましょう。

if 条件式1:
    条件式がtrueの時に実行する処理
elif 条件式2:
    条件式1がfalse、条件式2がtrueの時に実行する処理
else:
    全ての条件式がfalseの時に実行する処理

「if文の書き方」に当てはめて、例コードを考えてみると、条件式1(num < 10)falseになります。

そのため、条件式2(num == 10)に流れtrueの結果が得られるため、「条件式1がfalse、条件式2がtrueの時に実行する処理」となり。「numは10と等しい」と出力されます。

比較演算子一覧

if文を使う際には、比較演算子を理解する必要があります。

Pythonで使用される比較演算子は、以下の通りです。

比較演算子意味
x < yxyより小さければTrue
x <= yxyより小さいか等しければTrue
x > yxyより大きければTrue
x >= yxyより大きいか等しければTrue
x == yxyの値が等しければTrue
x != yxyの値が等しくなければTrue
x is yxyが同じオブジェクトであればTrue
x is not yxyが同じオブジェクトでなければTrue
x in yxyに含まれていればTrue
x not in yxyに含まれていなければTrue
参照:組み込み型 — Python 3.12.0a5 ドキュメント

if文では上記の比較演算子を利用して、条件式を記述する必要があります。

論理演算子一覧

if文で、複数の条件式を一つの条件式として扱う場合には、論理演算子を使用します。

Pythonで使用される論理演算子は、以下の通りです。

論理演算子意味
x and yxyTrueであればTrue
x or yxyいずれかがTrueであればTrue
not xxTrueであればFalsex がFalseであればTrue
参照:組み込み型 — Python 3.12.0a5 ドキュメント

論理演算子を使用することで、より複雑な条件式を記述することが出来ます。

num = 50

# 変数numが10より小さい
if(num > 10 and num < 100):
    print("numは10より大きい かつ numは100より小さい")
numは10より大きい かつ numは100より小さい

知っておくと便利な真理値判定

Pythonでは、真理値が規定値として決まっているものがあります。

  • 偽であると定義されている定数: None と False
  • 数値型におけるゼロ: 00.00jDecimal(0)Fraction(0, 1)
  • 空のシーケンスまたはコレクション: ''()[]{}set()range(0)

上記のルールを知っておくと、リストがnullかを調べることも簡単に出来ます。

numList1 = [1, 2, 3]
numList2 = []

# numList1は空値
if(bool(numList1) == False):
    print("numList1は空値")
else:
    print("numList1は空値ではない")
       
# numList2は空値
if(bool(numList2) == False):
    print("numList2は空値")
else:
    print("numList2は空値ではない")
numList1は空値ではない
numList2は空値

【まとめ】if文を使用することで条件分岐を実現できる

if文の使い方は分かりましたか?

if 条件式1:
    条件式がtrueの時に実行する処理
elif 条件式2:
    条件式1がfalse、条件式2がtrueの時に実行する処理
else:
    全ての条件式がfalseの時に実行する処理

この記事では、Pythonのifの使い方について紹介しました。

最後になりますが、私の体験談やみなさんの疑問に対して、できる限り分かりやすく記載したつもりです。ですが、もしここに関してもっと詳しく教えて欲しいときなどは、遠慮なく、お問い合わせ、コメント、Twitterにてご連絡ください。

最後までお読みいただきありがとうございました。