Python - if による処理の分岐
公開日:2019-02-28 更新日:2019-05-29
[Python]
1. 概要
if で処理の流れを分岐します。
2.1 サンプル
インデントが変わるまで if のブロックになります。
a = 5
if a == 5:
print(5)
5
2.2 elif と else
elif で、次の条件の判定をすることができます。
elif は複数使うことができます。
else は、if の条件と、elif の条件に一致しなかった場合に処理されます。
elif は複数使うことができます。
else は、if の条件と、elif の条件に一致しなかった場合に処理されます。
a = "a"
if a == "b":
print("b")
elif a == "c":
print("c")
elif a == "d":
print("d")
else:
print("a");
a
2.3 and と or
複数の条件を満たす必要がある場合は and、
どちらかの条件を満せばよい場合は or で式を結合します。
動きとしては、最初に if の中の論理演算が行われ、
if はその結果が True か False かだけで分岐しています。
どちらかの条件を満せばよい場合は or で式を結合します。
a = 1
b = "test"
if a == 1 and b == "test":
print("OK1")
if a == 10 or b == "abc":
print("OK2")
OK1
動きとしては、最初に if の中の論理演算が行われ、
if はその結果が True か False かだけで分岐しています。
2.4 not
not を使って、否定することができます。
「not (a == 1)」の場合は、「a は 1」ではない、と言う意味になります。
「not (a == 1)」の場合は、「a は 1」ではない、と言う意味になります。
a = 5
if not (a == 1):
print("1ではありません")
if a != 1:
print("1ではありません")
1ではありません
1ではありません
2.5 and を使わない複数の条件の指定
Python では、and を使わずに複数の条件を指定することができます。
比較演算子の左右の値をそれぞれ比較して、1つでも成り立たない場合は false となります。
比較演算子の左右の値をそれぞれ比較して、1つでも成り立たない場合は false となります。
a = 5
if 10 >= a >= 0:
print("0 ~ 10 です。")
print(5 < 15 > 10 < 20 < 25 > 5)
print(5 == 5 > 1)
0 ~ 10 です。
True
True