見出し画像

ブール値と条件文【Python入門③】

ブール値

真(True)あるいは偽(False)の二つの値のうちどちらか一つを持つデータ型のことを指します。

x = True
y = False

print(x and y)   # 出力: False
print(x or y)    # 出力: True
print(not x)     # 出力: False

比較演算子

  • == : 等しい。2つの値が等しい場合に True を返す

  • != : 等しくない。2つの値が等しくない場合に True を返す

  • < : 小さい。左の値が右より小さい場合に True を返す

  • > : 大きい。左の値が右より大きい場合に True を返す

  • <= : 以下。左の値が右以下の場合に True を返す

  • >= : 以上。左の値が右以上の場合に True を返す

ブール値の結合

  • and, or , notを使用してブール値を組み合わせられる

  • andはorより前に評価される

# 読みづらいコード(エラーは出ない)
prepared_for_weather = have_umbrella or (rain_level < 5 and have_hood) or not (rain_level > 0 and is_workday)

# 改行とかっこで読みやすくする
prepared_for_weather = (
    have_umbrella 
    or ((rain_level < 5) and have_hood) 
    or (not (rain_level > 0 and is_workday))
)

条件文

if文、if-else文、if-elif-else文があります。コードのブロックを示すコロン(:)と、空白の使い方(4つ分のスペースのインデント)を適切に使用しましょう。

# if-elif-elseの構文
if condition1:
    # condition1がTrueのときに実行されるブロック
elif condition2:
    # condition1がFalseでcondition2がTrueのときに実行されるブロック
else: 
    # condition1とcondition2がともにFalseのときに実行されるブロック
# 実際の利用例
score = 85

if score >= 90:
    print('Excellent')
elif score >= 70:
    print('Good')
else:
    print('Needs Improvement')

ブール変換

数値や文字列をブール値に変換することができます。

print(bool(1)) # 全ての数字は0を除き【True】
print(bool(0))
print(bool("asf")) # 全ての文字列は、空白を除き【True】
print(bool(""))
# 一般的に空の文字列、リスト、タプルなどはfalseになります

いいなと思ったら応援しよう!