Python 3.10では、他のプログラミング言語でスイッチ文として知られている機能が導入されました。この新機能は「構造的パターンマッチング」と呼ばれ、match
とcase
のキーワードを使用して実装します。
Python 3.10以前では、複数の条件文を実行するためにelif
キーワードを使用する必要がありました。しかし、Python 3.10からは、以下のようにmatch
とcase
を使用してスイッチ文を書くことができます。
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
の値に応じて異なる文字列を返しています。case
の後に具体的な値を指定することで、その値に対応するアクションを定義します。また、case _:
はデフォルトのケースを定義するために使用され、具体的なマッチが確認されなかった場合にこのケースが使用されます。
この新機能により、Pythonのコードがより読みやすく、理解しやすくなりました。Python 3.10をまだ使用していない場合は、この新機能を試してみてください。