【Python】if文について

(※以下は2018年1月6日時点の情報です。)

このページでは『Pythonの条件判定』について解説します。

if文

if文を使えば一定の条件を満たしたときだけ処理を行うことができるようになります。

Pythonのif文には中カッコはありません。
その代わりインデント(空白)を用いて、条件を満たしたときにどこからどこまでの処理を行うか表します。

下はif文のフォーマットです。
条件式の後は『:』を付けます。

if文
if 条件式 :
    処理1
    処理2
    処理3
処理A

下はif文の実行例です。
『aは5です』と表示されますが、『aは10です』とは表示されません。

if文の例
a = 5
if a == 5:
    print("aは5です")

aは5です

a = 5
if a == 10:
    print("aは10です")

if-else

if文で条件を満たさなかったときに実行したい処理がある場合はif-else文が使えます。

if-else文の例
a = 5
if a % 2 == 0:
    print("偶数")
else:
    print("奇数")

奇数

if-elif

if文で条件を満たさなかったときに更に条件判定をしたい場合はif-elif文が使えます。
elifはelse-ifを省略した表記です。

if-elif文の例
a = 5
if a < 3 :
    print("aは3未満")
elif a < 5:
    print("aは3以上5未満")
elif a < 7:
    print("aは5以上7未満")
else:
    print("aは7以上")

aは5以上7未満

値で判定

これまでの条件判定はすべてブール値で判定していましたが、値だけで判定することも可能です。

値の判定条件は以下の通りです。
Falseになる条件がbool関数に値を渡したときと同じであることがわかります。

False判定になる場合 True判定になる場合
数値 0 それ以外
文字列 空文字列 それ以外
リスト 空のリスト それ以外
タプル 空のタプル それ以外

下は条件式の代わりに値で判定する実行例です。

値で判定する例
a = 5
if a:
    print("aは0ではありません")
else:
    print("aは0です")

aは0ではありません

b = ""
if b:
    print("bは空文字列ではありません")
else:
    print("bは空文字列です")

bは空文字列です

c = ()
if c:
    print("cは空ではありません")
else:
    print("cは空です")

cは空です