今回は、Pythonのif文で複数条件を指定する方法についてご紹介します。
関連記事
目次
複数条件を指定するメリット
Pythonのif文では複数の条件を指定できます。
これにより、以下のようなメリットがあります。
- 条件を細かくコントロールできるため、柔軟な分岐処理が可能
- 複数の論理演算子を活用し、コードを簡潔にまとめられる
- 可読性を保ちながら、意図した条件を正確に表現できる
論理演算子による複数条件の指定方法
複数の条件を組み合わせる場合は、論理演算子を活用します。
主な論理演算子として、and・or・notがあります。
and演算子を使った例
複数の条件がすべて満たされるときに処理を行う場合、andを使用します。
1 2 3 4 5 |
x = 5 y = 8 if x > 0 and y < 10: print("xは正で、かつyは10未満です") |
実行結果
xは正で、かつyは10未満です
or演算子を使った例
複数の条件のいずれかが満たされれば良い場合、orを使用します。
1 2 3 4 5 |
a = 3 b = 15 if a < 0 or b > 10: print("aが負またはbが10より大きいです") |
実行結果
aが負またはbが10より大きいです
not演算子を使った例
条件の結果を反転させたい場合、notを使用します。
1 2 3 4 |
flag = False if not flag: print("flagはFalseです") |
実行結果
flagはFalseです
括弧で条件をグループ化する方法
複数の論理演算子が混在する場合、条件の優先順位を明確にするために括弧を使います。
1 2 3 4 5 6 |
age = 25 has_ticket = True is_vip = False if (age >= 18 and has_ticket) or is_vip: print("入場可能です") |
実行結果
入場可能です
上記の例では、「ageが18以上かつチケットを持っている」または「VIPである」場合に入場可能と出力しています。
括弧を使うことで、意図した通りの評価順序を指定できます。
複数の条件分岐で状況に応じた処理を行う
if文に続けてelifやelseを組み合わせると、条件に応じて処理を分けることができます。
コードを例示します。
1 2 3 4 5 6 7 8 9 10 |
score = 75 if score >= 90: print("評価: 優") elif score >= 75: print("評価: 良") elif score >= 60: print("評価: 可") else: print("評価: 不可") |
実行結果
評価: 良
このように、複数の条件に対して個別の処理を実行できます。
よくあるエラーや注意点
複数条件のif文を利用する際に、気を付けたいポイントをいくつかご紹介します。
- 演算子の優先順位:
andやorを組み合わせる場合、想定と異なる評価結果になることがあります。必要に応じて括弧を使いましょう。 - 可読性の確保:
一行に複数の論理演算子を詰め込みすぎると、可読性が低下します。必要に応じて条件を変数化するなど工夫しましょう。 - ネストを深くしすぎない:
複雑な条件をネストすると、保守が難しくなります。コメントや変数化で読みやすさを維持することが大切です。
まとめ
Pythonのif文で複数条件を指定する際は、論理演算子を活用して柔軟な条件分岐を行うことが可能です。
条件が複数混在する場合は、括弧を使って評価順序を明確にするのがポイントです。
コードの可読性を意識しながら、適切な条件分岐を組み合わせましょう。
関連記事