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

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

Pythonではこれまで頑なにswitch文の導入を回避してきていました。if … elif … else 文で書けるだろう、ということと、辞書型を使えば3つ以上のディスパッチも簡単にできる、というのが理由でした。

しかし、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の値を見てそれに対応するエラーメッセージを返すという処理を行っています。

また、Pythonには比較演算子として>(大なり)が存在します。これは2つのオペランドを比較し、オペランド1がオペランド2より大きい場合にTrueを返します。

print(5 > 3)  # True
print(2 > 4)  # False

このように、Pythonでは様々な制御文や演算子を用いて、効率的なプログラムを書くことができます。

投稿者 admin

コメントを残す

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