ホームページ >バックエンド開発 >Python チュートリアル >Python で Switch ステートメントを置き換えるにはどうすればよいですか?

Python で Switch ステートメントを置き換えるにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-20 04:43:13312ブラウズ

How Can I Replace Switch Statements in Python?

Python での Switch ステートメントの代替手段

入力インデックスに基づいて異なる固定値を返す関数を Python でコーディングする場合、適切な置換を見つける他の言語で一般的に使用される for switch または case ステートメントは、

Python の switch ステートメントの代替: Match-Case ステートメント

Python 3.10 では、switch ステートメントの効果的な代替として機能する match-case ステートメントが導入されました。これは、以下の単純な例を超えた大幅な柔軟性を備えた包括的な実装を提供します。

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2
        case _:
            return 0   # Default case if x is not found

包括的なドキュメントとリソースは、次の場所にあります。

  • [Switch ステートメント (構造パターンの下)] Matching)](https://docs.python.org/3/library/dataclasses.html#match-statements)
  • [Match ステートメント (複合ステートメントの下)](https://docs.python. org/3/reference/compound_stmts.html#the-match-statement)
  • [PEP 634 - 構造パターンマッチング: 仕様](https://peps.python.org/pep-0634/)
  • [PEP 636 - 構造パターン マッチング: チュートリアル](https://peps.python.org/pep-0636 /)

Python の辞書代替 ≤ 3.9

Python バージョン ≤ 3.9 との互換性が必要な場合は、辞書を利用することで多用途の代替手段を提供できます。

def f(x):
    return {
        'a': 1,
        'b': 2,
    }.get(x, 0)  # Default case: 0 is returned if 'x' is not found

この方法では、キーベースの値を効率的に検索できます。辞書を使用して、要件に対する簡単な解決策を提供します。

以上がPython で Switch ステートメントを置き換えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。