これまで、 and
演算子と or
演算子を紹介しました。
Pythonの論理演算子には、and
と or
の他にもう一つ、not
演算子があります。
not
演算子は、指定した式の値を 反転 し、値が True
(真) なら False
(偽)を返し、False
(偽)ならTrue
(真) を返す演算子です。
not
演算子は、次のように記述します。and
演算子や or
演算子と違って、式を一つだけ指定できます。
not 式
たとえば、ある乗り物は「10歳未満 以外 はお乗りいただけます」という条件がついているとします。10歳未満 以外 ですので、10歳未満なら False
、10歳以上なら True
となる条件です。
10歳未満という条件は
age < 10
という式で書けます。乗り物に乗れるのはこの条件が False
となる場合ですから、not
演算子を使って結果を反転します。
not (age < 10)
この条件式は、age
が10歳未満なら False
、10歳以上なら True
となり、「10歳未満 以外」 を満たしています。
not
演算子をつかって、このプログラムを書いてみましょう。
In [8]:
age = 20 # 年齢は20歳
if not (age < 10):
print("お乗りいただけます。")
変数 age
は 20
ですから、 age < 10
という式は False
となります。そして、not
演算子はその結果を反転し、結果として True
となります。
否定¶
次のように、変数 A
の not
演算を行い、結果を変数 B
に代入すると、
B = not A
変数 B
の値は、A
値によって次のようになります。
B | A |
---|---|
True | False |
False | True |
A
が False
ならば B
は True
、A
が True
ならば B
は False
となります。
not
のように、入力値が反転した値が結果となる論理演算を、否定 ともいいます。