Python の If-Else 条件とロジック

Python の条件文を学習します。 if、elif、else を使用してコード フローを制御し、アプリケーションで意思決定を行う方法を学びます。

エディターで試してみる

概要

条件ステートメントは、Python プログラムの意思決定のバックボーンです。条件がないと、スクリプトは盲目的に上から下に実行され、実行されるたびにまったく同じことを実行します。条件を使用すると、コードで変数、ユーザー入力、または外部状態を検査し、それらの評価に基づいて分岐してさまざまなロジックを実行できます。

条件付きロジックの中心となるのはブール式、つまり「True」または「False」のいずれかに評価されるステートメントです。 Python は、「==」 (等しい)、「!=」 (等しくない)、「>」 (より大きい)、「<」 (より小さい) などの論理演算子を使用してこれらの式を作成します。式が「True」と評価されると、関連するコード ブロックがトリガーされます。

「if」ステートメントは意思決定の入り口です。 「if」を記述し、その後に条件を記述し、コロン「:」で終わります。その下のコード ブロックはインデントする必要があります。 Python ではスコープを定義するためにインデントが厳密に適用され、他の言語で見られる中括弧 `{}` が不要になります。条件が true の場合、インデントされたブロックが実行されます。 false の場合、完全にスキップされます。

別の結果を処理するために、Python には `elif` (else if の略) 節と `else` 節が用意されています。連続した条件をチェックするために、必要な数の `elif` ブロックを連鎖させることができます。 1 つが「True」と評価されるとすぐに、そのブロックが実行され、チェーンの残りの部分は無視されます。 `else` ブロックはキャッチオールとして最後にあり、先行するすべての `if` および `elif` が `False` と評価された場合にのみ実行されます。

Python は、「and」、「or」、「not」などの論理演算子もサポートしているため、複数の条件を組み合わせて複雑なルールを作成できます。たとえば、「if age >= 18 and has_license:」では、両方の条件が true である必要があります。論理フローをマスターすると、アプリケーションが多様で予測不可能なランタイム シナリオを安全に動的に処理できることが保証されます。

コードと実行の出力

ネットワーク ステータス コードを評価し、値に応じてアプリケーション ロジック フロー コンテキストを安全にルーティングします。

status_code = 404

if status_code == 200:
    print("Success: Page loaded!")
elif status_code == 404:
    print("Error: Page not found.")
elif status_code == 500:
    print("Error: Internal server error.")
else:
    print(f"Unknown status code: {status_code}")
端子出力
Error: Page not found.

段階的な実装

  • ユーザー入力フォームの検証
  • 例外と特定のエラーコードの処理
  • Web フレームワーク内でのユーザーのルーティング

よくある質問

「match-case」ステートメントとは何ですか?

Python 3.10 では、構造パターン マッチングが導入されました。これは他の言語の switch ステートメントのように機能し、過剰な elif チェーンに代わるクリーンな代替手段を提供します。

if ステートメントを入れ子にすることはできますか?

はい、if ステートメントを他の if ステートメントの中に配置できますが、適切にインデントすることを忘れないでください。

関連トピック

推奨される Python リソース

関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。