Pythonのif文は、条件式を記述するときに使用しますが、複数条件を指定したり、結果が偽の場合に処理を実行したいなんて場合もあります。そこで、ここではif文の論理演算子 if and
について、以下の内容で解説していきます。
if andとは
if and
は複数条件式をandで繋げて、どちらの条件式も真の場合にtrueを返します。そのため、通常のif文の条件式と異なりどちらの条件式も成立しなければfalseとなります。
if andの使い方
if文の基本的な使い方は以下のようになります。
fruits = "apple"
value = 100
if fruits == "apple" and value == 100:
print("true")
else:
print("false")
このサンプルでは、変数fruits、valueの値がそれぞれ一致していたためtrueを返しています。以下のようにどちらかの条件が一致しない(偽)の場合はfalseを返します。
fruits = "apple"
value = 100
if fruits == "apple" and value == 200:
print("true")
else:
print("false")
ループ処理で使用する方法
and演算子は複数の条件式を指定できるため、以下のように辞書型の変数からキーと値が一致した場合のみ処理を実行したい場合などでよく使われます。
fruits = {"apple":100, "orange":80, "melon":450}
for k, v in fruits.items():
if k == "orange" and v == 80:
print('一致しました! {0}:{1} '.format(k, v))
else:
print('一致しませんでした! {0}:{1} '.format(k, v))
このサンプルでは、辞書の各要素をfor文で取得し、キーと値を繰り返し処理ごとに取得して、キーと値が一致した場合はif文の処理が実行されます。
その他の論理演算子
論理演算子はここで紹介したand演算子の他に or
、 not
などがあります。それぞれの違いについて見てみましょう。
演算子 | 真の条件 |
---|---|
or | どちらかが真の場合 |
and | どちらも真の場合 |
not | 真であれば偽、偽であれば真 |
以下の例ではandとor演算子を使用して、値が7よりも大きい場合で、値が3に一致または5よりも大きい場合に真となります。
list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for i in list:
if i < 7 and i == 3 or i >5:
print(i)
以上、Pythonのif文と論理演算子andについて解説しました。これらの知識を活用して、より複雑な条件分岐を行うことができます。Pythonの学習を頑張りましょう!.