スポンサーリンク

【Python】if文(条件分岐)の基本

Python
スポンサーリンク

条件分岐の書き方

単純な条件分岐

age = 10

if age == 10:
print("年齢は10歳です。")

結果

年齢は10歳です。 

条件が一致したときのみ実行され、一致しない場合は何も起こらない(表示されない)。

複数の条件分岐

age = 15

if age < 10:
print("10歳未満です。")
elif age < 20:
print("10歳以上、20歳未満です。")
else:
print("20歳以上です。")

結果

10歳以上、20歳未満です。 

elifはPHPやJavaScriptでいう、elseif

複数の条件式を繋げる

x = 7
y = 15

if x > 10 and y > 10:
print("xとyはどちらも10より大きい。")
elif x > 10 or y > 10:
print("xまたはyは、10より大きい。")
else:
print("xとyはどちらも10以下です。")

結果

xまたはyは、10より大きい。  

and(かつ)、 or(または)で繋げて書くことができる。

論理演算子、比較演算子を使う

条件式には、論理演算子や比較演算子が用いられ、その比較により条件式からTrueまたはFalseが返る。

論理演算子

論理演算子は、真(True)と偽(False)の真偽値。bool値ともいう。

変数に真偽値の値を代入して、真偽値をもとに、条件分岐を作成。

is_animal = True
is_small = False

if is_animal and is_small:
print("小さな動物")
elif is_animal and not(is_small):
print("大きな動物")
elif not(is_animal) and is_small:
print("動物ではないが、大きい")
else:
print("動物でなく、大きくもない")

結果

大きな動物

not( ) を使うことで、否定の判断をすることができる。

比較演算子

比較演算子は、2つの値の比較を行い、その結果を真偽値で返す。

< より小さい
> より大きい
<= 以下
>= 以上
== 一致
!= 不一致

3つの値の最大値を返す関数を作成。

def max_num(x, y, z):
if x >= y and x >= z:
return x
elif y >= x and y >= z:
return y
else:
return z

print(max_num(24, 15, 36))

print(max_num(126, 880, 14))

結果

36

880

if文ネスト(入れ子)

if文をネストすると、より複雑な条件分岐が可能に。

weather = "晴れ"
temperature = 24

if weather == "晴れ" or weather == "曇り" :
if temperature > 20:
print("暖かく、いい天気です!")
else:
print("雨は降りません。")
else:
print("雨が降るかもしれません")

結果

暖かく、いい天気です!

コメント