真偽値はTrue
(真)かFalse
(偽)のどちらかの値。条件分岐や繰り返しなど、条件によってプログラムの動作を変えるときに使う。
真偽値はTrue
(真)かFalse
(偽)のどちらかの値。例えば2 < 1
という式は正しくないのでFalse
になる。
print(2 < 1) # False
このようにオブジェクトを比較してTrue
かFalse
という真偽値を返す式は、条件分岐や繰り返しなど条件を判断するときに使う。
比較に使う記号を比較演算子という。
記号 | 真偽値の例 | 意味 |
---|---|---|
== | 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