論理演算子の使い方

論理演算子(またはブール演算子)は a 且つ b や a 又は b のようにブール値を組み合わせて評価する場合に使用される演算子です。ここでは論理演算子の使い方について解説します。

(Last modified: )

論理演算子の一覧

Python で用意されている論理演算子の一覧です。

x or y    x または y の少なくともどちらか 1 つが True なら True
          それ以外は False
x and y   x と y がどちらも True なら True
          それ以外は False
not x     x が True なら False、 x が False なら True

実際には True または False ではなく真か偽か判定すると True または False になる値が帰ってきます。詳しくはあとで解説します。

論理和

論理和は演算子の左辺または右辺のどちらか 1 つでも True なら True となり、両方とも False の場合だけ False となります。

True  or True      True
True  or False     True
False or True      True
False or False     False

具体的な次のような使い方となります。

num = 8

print(bool(num < 10 or num > 40))
>> True

変数 num に格納されている値に対して num < 10 という条件式と、 num > 40 という条件式を評価します。論理和の場合はどちらかが少なくとも 1 つが True ならば全体が True となるため今回は True となりました。

もう少し細かい話をすると、論理和の場合 x or y という式に対して最初に x を評価します。 x が偽だった場合は y を返します。 x が真だった場合は x を返します。

論理積

論理積は演算子の左辺および右辺がどちらも True なら True となり、それ以外は False となります。

True  and True      True
True  and False     False
False and True      False
False and False     False

具体的な次のような使い方となります。

num = 24

print(bool(num > 10 and num < 40))
>> True

変数 num に格納されている値に対して num > 10 という条件式と、 num < 40 という条件式を評価します。論理積の場合は両方とも True ならば全体が True となるため今回は True となりました。

もう少し細かい話をすると、論理積の場合 x and y という式に対して最初に x を評価します。 x が偽だった場合は x を返します。 x が真だった場合は y を返します。

否定

否定は演算子の左辺が True なら False となり、左辺が False なら True となります。

not True      False
not False     True

具体的な次のような使い方となります。

old = 24

print(bool(not old < 20))
>> True

変数 old に格納されている値に対して old < 20 という条件式を評価します。否定の場合は右辺が True ならば全体が False、右辺が False ならば全体が True となるため今回は True となりました。

否定の場合は not x という式に対して x が偽だった場合は True を返します。 x が真だった場合は False を返します。

-- --

論理演算子の一覧と使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。