入力インデックスの値に基づいて異なる固定値を返す関数を Python で記述したいと思います。
switch
他の言語ではorステートメントを使用しますcase
が、Python にはステートメントがないようですswitch
。このシナリオで推奨される Python ソリューションは何ですか?
ベストアンサー1
Python 3.10(2021)では、match
-case
ステートメントは、Python の「スイッチ」のファーストクラスの実装を提供します。例:
def f(x):
match x:
case 'a':
return 1
case 'b':
return 2
case _:
return 0 # 0 is the default case if x is not found
match
-ステートメントcase
は、この単純な例よりもはるかに強力です。
Python ≤ 3.9 をサポートする必要がある場合は、代わりに辞書を使用します。
def f(x):
return {
'a': 1,
'b': 2,
}[x]