Python 3.10から、Pythonでもmatch文とcase文が導入されました。これにより、よりシンプルで直感的な条件分岐が可能になりました。

Pythonとcase文の関係

多くのプログラミング言語では、switch文やcase文といった機能が提供されており、これらを使って条件分岐を行うことができます。しかし、Pythonではこれらの機能が長らく存在していませんでした。

その代わり、Pythonではif文やelif文を使って条件分岐を行っていました。

match-case文の登場

Python 3.10から、Pythonでもmatch文とcase文が導入されました。これにより、よりシンプルで直感的な条件分岐が可能になりました。

以下に、先ほどの例をmatch文とcase文を使って書き直した例を示します。

value = 2
match value:
    case 1:
        print("値は1です")
    case 2:
        print("値は2です")
    case 3:
        print("値は3です")
    case _:
        print("値は1, 2, 3以外です")

このコードでは、match文の後に条件となる変数を指定し、case文でそれぞれの値に対応する処理を記述しています。case _:はどの条件にも当てはまらない場合の処理を表しています。

このように、Python 3.10からはmatch文とcase文を使って、よりシンプルで直感的な条件分岐が可能になりました。ただし、現在でもPython 3.9以前のバージョンが使われているため、まだmatch文とcase文が使えない状況もあります。そのため、状況に応じてif文やelif文を使った条件分岐も覚えておくことが重要です。

match-case文の使い方

Python 3.10から導入されたmatch-case文は、他のプログラミング言語でいうところのswitch-case文に似た機能を提供します。match-case文を使うことで、複数の条件に基づいて処理を分岐させることができます。

パターンマッチング

match-case文の強力な機能の1つに、パターンマッチングがあります。これにより、リストや辞書などのデータ構造に対しても簡単に条件分岐を行うことができます。

例えば、次のようなリストがあるとします。

data = ["apple", 3]

このリストの要素に応じて処理を分岐させるには、以下のようにmatch-case文を使います。

data = ["apple", 3]

match data:
    case ["apple", int(num)]:
        print(f"リンゴが{num}個")
    case ["banana", int(num)]:
        print(f"バナナが{num}個")
    case _:
        print("その他のデータ")

このように、match-case文を使うことで、Pythonプログラムの条件分岐を簡潔かつ柔軟に記述することができます。ただし、match-case文はPython 3.10以降でのみ利用可能なので、古いバージョンのPythonを使っている場合は注意が必要です。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です