Python 3.10では、新たな構文としてmatch-caseが導入されました。この構文は、値に応じた処理の分岐を行うためのもので、条件分岐が厳密に定められることや、条件が入れ子になってしまった場合にもスッキリとまとまることが特徴です。

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2

上記の例では、関数fの引数x'a'であれば1を、'b'であれば2を返すという処理を行っています。

また、match-case構文は、リストやタプルなどのデータ構造に対する分岐も可能です。

point = (33, 4)
match point:
    case (0, 0):
        print("原点")
    case (0, y):
        print(f"Y={y}")
    case (x, 0):
        print(f"X={x}")
    case (x, y):
        print(f"X={x}, Y={y}")
    case _:
        print("座標ではありません")

この例では、タプルpointの要素に応じて異なるメッセージを出力しています。

match-case構文は、Pythonのコードをより明確で読みやすくするための強力なツールです。特に、複雑な条件分岐を必要とする場合や、データ構造に基づいた処理を行う場合には、その真価を発揮します。

投稿者 admin

コメントを残す

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