Python

【Python】if文の使い方【条件分岐】

この記事では、Pythonのif文の使い方を解説します。

if文を使うことで簡単に条件分岐させることができます。条件分岐とは「条件によって処理を分岐させること」を言います。

if文を使った条件分岐は、基本的な処理の1つでとてもよく使われます。

ちなみに、他の言語で用いられるswitch文はPythonには存在しません。

【Python】switch文がないので何かで代用しよう!この記事では、Pythonでswitch文を代用する方法を紹介します。さまざまなプログラム言語で使用されているswitch文がPytho...

それでは、if文の使い方を見ていきます。

if文の使い方

if文は以下のように記述します。

if 条件式1:
    条件式1がTrueの時に処理され、Falseの場合は無視される
elif 条件式2:
    条件式1がFalseで、条件式2がTrueの時に処理される
elif 条件式3:
    条件式1,2がFalseで、条件式3がTrueの時に処理される
  ・
  ・
  ・
else:
    全ての条件式がFalseの時に処理される
  • インデントはスペース4つ
  • elifで条件を何個でも追加できる
  • elifとelseはオプションで省略可能

条件式には真偽値を返す「式」や「関数」などを指定します。

比較演算子

比較演算子とは値を比較するための演算子です。比較演算子を用いて値を比較することで式が真ならTrue、偽ならFalseを返します。

Pythonには以下のような比較演算子が用意されています。

演算子意味
x == yxとyが等しければTrue
x != yxとyが等しくなければTrue
x > yxがyよりも大きければTrue
x < yxがyよりも小さければTrue
x >= yxがyよりも大きいか等しければTrue
x <= yxがyよりも小さいか等しければTrue
x in yxがyに含まれていればTrue
x not in yxがyに含まれていなければTrue
x is yxとyが同一のオブジェクトならばTrue
x is not yxとyが同一のオブジェクトでなければTrue

詳しくは以下の記事を参照してください。

【Python】データを比較する【比較演算子】この記事では、Pythonでデータを比較する方法を解説します。 プログラミングでデータを比較するには「比較演算子」を使います。 ...

if文中のif文:ネストされたif文

ifブロック内にif文を記述することで、より複雑な条件分岐をすることができます。

val = 6

if val % 2 == 0:
    if val >= 0:
        print('0以上の偶数です')
    else:
        print('0以下の偶数です')

実行結果

0以上の偶数です

上記のコードでは、1つ目のifで偶数かどうかを判別して、2つ目のifで0以上かどうかを判別しています。

このように、if文を重ねることで分岐を増やし複雑な条件を処理することができます。

しかし、if文をネストしすぎると可読性が下がってしまいます。なので、論理演算子を使って複数の条件をつなげたり、タプルを使って条件をまとめることで記述をすっきりさせることができます!

val = 6

if val % 2 == 0 and val >= 0:
    print('0以上の偶数です')

実行結果

0以上の偶数です

if文を1行で記述する:三項演算子

三項演算子を使うことで1行で条件分岐することができます。

書式

三項演算子はifを使って以下のように記述します。

変数 = (条件式がTrueの時に代入される値) if (条件式) else (条件式がFlaseの時に代入される値)

サンプル

試しに簡単なサンプルを見てみましょう!

val = 1

s = 'valは「1」です' if val == 1 else 'valは「1以外」です'

print(s)

実行結果

valは「1」です
【Python】三項演算子の使い方【条件式】この記事では、Pythonの三項演算子の使い方を解説します。 三項演算子を使うことで条件分岐を1行で記述することができます。 ...

まとめ

この記事では、Pythonでif文を使う方法を解説しました。

今回のおさらい

以下のコードでわからない箇所があったら記事を見直してみましょう!

num = int(input('整数: '))

if num == 0: 
    print('numは0です')
elif num == 1:
    print('numは1です')
else:
    print('0,1以外です')

実行結果

整数: 0
numは0です

整数: 1
numは1です

整数: 3
0,1以外です

if文を使うとコードの幅が広がるので、色々試して遊んでみると面白いです。

それでは今回の内容はここまでです!ではまたどこかで〜( ・∀・)ノ

最短3か月でエンジニア転職「DMM WEBCAMP COMMIT」
なんと転職成功率98%!
今なら3日以内のカウンセリング枠を予約&参加で「1,000円分のAmazonギフト券」をプレゼント!