真偽値

真偽値True(真)かFalse(偽)のどちらかの値。条件分岐繰り返しなど、条件によってプログラムの動作を変えるときに使う。


    真偽値

    真偽値True(真)かFalse(偽)のどちらかの値。例えば2 < 1という式は正しくないのでFalseになる。

    print(2 < 1) # False

    このようにオブジェクトを比較してTrueFalseという真偽値を返す式は、条件分岐や繰り返しなど条件を判断するときに使う。


    比較演算子

    比較に使う記号を比較演算子という。

    比較演算子
    記号 真偽値の例 意味
    == a == b aとbは等しい
    != a != b aとbは等しくない
    < a < b aはbより小さい
    <= a <= b aはb以下
    > a > b aはbより大きい
    >= a >= b aはb以上

    print(2 == 2) # True
    print('abc' != 'ABC') # True
    print(2 != 2) # False
    print(2 > 1) # True
    print(2 > 3) # False

    複数の真偽値の組み合わせ

    複数の条件をまとめて一つの条件とする場合は、and(かつ)、or(または)、()(条件を括る)を使って式を追加していく。

    # どちらもTrueだから、全体がTrue
    全体 = 1 < 2 and 1 < 3
    print(全体) # True
    
    # いずれかがTrueだから、全体がTrue
    全体 = 1 < 2 or 1 > 3 or 1 > 4
    print(全体) # True
    
    # ()内がTrueだから、全体がTrue
    全体 = 1 > 2 or (1 < 2 and 1 < 3)
    print(全体) # True
    

    オブジェクトそのものも真偽値判定に使える

    条件式を使わないオブジェクトそのものも、if文などで真偽値の判定に利用できる。

    Falseになるのは、Noneや数値の0''(空文字)、[](空のコンテナ)。

    # bool関数で判定
    print(bool(None)) # False
    print(bool(0)) # False
    print(bool(0.0)) # False
    print(bool('')) # False
    print(bool([])) # False
    
    print(bool(1)) # True
    print(bool('a')) # True
    print(bool([0])) # True
    

    オブジェクト = 0
    if オブジェクト:
      print(True)
    else:
      print(False) # False
    
    オブジェクト = ''
    if オブジェクト:
      print(True)
    else:
      print(False) # False