論理演算子は、条件の組み合わせや真偽値の操作を行う際に使用されます。Pythonでは、主に以下の3つの論理演算子が用意されています。
and
: 両方の条件が真である場合に真を返す。or
: 少なくとも一方の条件が真である場合に真を返す。not
: 条件の真偽を反転させる。これらの演算子を使った実践的なサンプルコードを見ていきましょう。
and
演算子and
演算子は、両方の条件が真である場合にのみ真を返します。
# 条件を定義
age = 20
is_student = True
# and 演算子を使用して条件を評価
if age >= 18 and is_student:
print("あなたは成人の学生です。")
else:
print("あなたは成人でないか、学生でないかのいずれかです。")
age >= 18
は True
です。is_student
は True
です。True
のため、and
演算子は True
を返し、"あなたは成人の学生です。" と出力されます。or
演算子or
演算子は、少なくとも一方の条件が真である場合に真を返します。
# 条件を定義
age = 16
is_student = True
# or 演算子を使用して条件を評価
if age < 18 or is_student:
print("あなたは未成年か、学生です。")
else:
print("あなたは成人の学生ではありません。")
age < 18
は True
です。is_student
は True
です。or
演算子は、いずれかが True
のため、"あなたは未成年か、学生です。" と出力されます。not
演算子not
演算子は、条件の真偽を反転させます。
# 条件を定義
is_authenticated = False
# not 演算子を使用して条件を評価
if not is_authenticated:
print("あなたは認証されていません。")
else:
print("あなたは認証されています。")
is_authenticated
は False
ですが、not
演算子によって True
に反転します。論理演算子は組み合わせて使用することもできます。
# 条件を定義
age = 22
is_student = False
has_discount = True
# 複数の論理演算子を使用して条件を評価
if (age >= 18 and not is_student) or has_discount:
print("あなたは割引を受ける資格があります。")
else:
print("あなたは割引を受ける資格がありません。")
age >= 18
は True
です。is_student
は False
ですが、not
演算子で True
になります。has_discount
は True
です。and
演算子の結果は True
で、or
演算子も True
になるため、"あなたは割引を受ける資格があります。" と出力されます。論理演算子(and
、or
、not
)を使うことで、複雑な条件を簡潔に表現することができます。これらの演算子を活用し、条件分岐や論理的な判断を行う際の基礎をしっかりと身につけましょう。