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

Python で switch ステートメントを複製するにはどうすればよいですか?

DDD
リリース: 2024-12-20 10:18:11
オリジナル
360 人が閲覧しました

How Can I Replicate a Switch Statement in Python?

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

Python には、switch ステートメントまたは case ステートメントは存在しません。ただし、同様の機能を実現するための推奨ソリューションがいくつかあります。

Python 3.10 以降: Match-Case ステートメント

Python 3.10 では match-case ステートメントが導入され、 switch ステートメントを直接置き換えます。これは、複数の条件を評価するためのより強力かつ簡潔な方法を提供します。

def f(x):
    match x:
        case 'a':
            return 1
        case 'b':
            return 2
        case _:
            return 0  # Default case for all other values
ログイン後にコピー

Python ≤ 3.9: Dictionary Approach

3.10 より前の Python バージョンが必要な場合、辞書は入力値と固定値の間のマッピングを作成するために使用されます。値:

def f(x):
    return {
        'a': 1,
        'b': 2,
    }.get(x, 0)  # Default case for unknown values
ログイン後にコピー

その他の代替

追加の代替は次のとおりです:

  • If-Else ステートメント: 連続if-else ステートメントを使用できますが、多くの場合、これは冗長になる可能性があります。 case.
  • Lambda 関数: Lambda 関数は、辞書アプローチと同様に、辞書のようなマッピングを定義するために使用できます。
  • Enum:列挙型では、可能な入力値を列挙し、それらを固定値に割り当てることができます。

switch ステートメントを置き換える場合は、使用されている Python のバージョン、ケースの数、必要な可読性と保守性を考慮してください。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート