#5 Pythonで学ぶ条件分岐の基本

プログラムの中で「もし〜なら、こうする」という判断を行う仕組みを「条件分岐」と呼びます。この記事では、Pythonにおける条件分岐の基本的な書き方と、便利な省略記法を解説します。

if文の基本

Pythonの条件分岐はifという単語から始まります。

age = 20
if age >= 18:
    print("成人です")

ifのあとに条件を書き、コロン(:)で終えます。条件が成り立つ場合に実行したい処理は、改行して字下げ(インデント)して書きます。

elseとelifで分岐を増やす

条件が成り立たなかった場合の処理はelseで書きます。

if age >= 18:
    print("成人です")
else:
    print("未成年です")

さらに条件を追加したい場合はelif(else ifの略)を使います。

if age >= 65:
    print("高齢者です")
elif age >= 18:
    print("成人です")
else:
    print("未成年です")

三項演算子で短く書く

「条件によって値を1つ選ぶ」だけの単純な分岐は、1行で書ける記法もあります。

status = "成人" if age >= 18 else "未成年"

他の言語の三項演算子(条件 ? 値1 : 値2)とは語順が異なり、「値1 if 条件 else 値2」という英語に近い順番で書く点がPythonらしい特徴です。

複数条件をまとめて書く

「〜以上かつ〜以下」のような範囲の判定は、比較演算子を連続して書くことでも表現できます。

if 18 <= age < 65:
    print("成人です")

18 <= age and age < 65と同じ意味を、より数学的で読みやすい形で書けます。

matchによるパターンマッチング

比較的新しいPythonには、複数の値によって処理を分けるmatchという書き方もあります。

match day:
    case "土" | "日":
        print("休日です")
    case _:
        print("平日です")

Pythonならではのインデント

Pythonの大きな特徴は、多くの言語で使われる中括弧{}の代わりに、字下げ(インデント)によって処理のまとまりを表す点です。インデントの深さがずれていると、意図した通りに動かなかったり、エラーになったりします。エディタの自動インデント機能に頼りつつ、揃っているかを意識する習慣をつけましょう。

まとめ

Pythonの条件分岐はif・elif・elseの3つで表現します。三項演算子や範囲の連続比較、matchによるパターンマッチングといった読みやすい書き方も活用しつつ、インデントによる処理のまとまりには特に注意しておきましょう。


本ページはプロモーションを含みます。

参考書籍(PR)

Pythonをもっと学びたい方には「スッキリわかるPython入門 第2版」がおすすめです。


PR

コードを書かずに自動化したい方へ

「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。

コメント

このブログの人気の投稿

#25 Rustで学ぶAI API(ChatGPT等)の呼び出し方の基本

#8 C++で学ぶ文字列操作の基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本