\

Pythonは、他のプログラミング言語(例えばC++やJava)のようなswitch文を持っていません。しかし、Python3.10から新たな制御文であるmatch文が導入されました。

Pythonのswitch文

Pythonを使い始めた人が最初に疑問に思うことの一つに「なぜswitch文がないのだろうか?」があります。C言語などでもお馴染みの機能で、ある変数の値によって3つ以上に処理の流れが分かれる場合に便利な機能です。Pythonではこれまで頑なにswitch文の導入を回避してきていました。

Python3.10のmatch文

Python3.10では、新たな制御文であるmatch文が導入されました。これは、他言語のSwitch文に似た機能を提供するものです。

以下に、Python3.10のmatch文の基本的な使用例を示します。

def http_error(status):
    match status:
        case 400:
            return "Bad request"
        case 404:
            return "Not found"
        case 418:
            return "I'm a teapot"
        case _:
            return "Something's wrong with the Internet"

この例では、statusの値を見てそれに対応するエラーメッセージを返すというものです。最後の _ は何にでもマッチするワイルドカードのようなもので、これでデフォルト動作を定義しています。

Python3.10のmatch文は、Pythonがこれまで頑なに導入を避けてきたswitch文の代替となるもので、Pythonのコードをより読みやすく、効率的にするための新機能です。

投稿者 admin

コメントを残す

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