Pythonでは、多くの他のプログラミング言語に存在するswitch
文がありません。しかし、それに代わるいくつかの手法が存在します。その一つが、辞書(dict
)のget
メソッドを使用する方法です。
dict.get
メソッドによるSwitch文の代替
Pythonの辞書型にはget
というメソッドがあります。このメソッドは、指定したキーが辞書に存在する場合はそのキーに対応する値を返し、存在しない場合はデフォルト値を返します。これを利用して、switch
文のような動作を実現することができます。
以下に具体的なコードを示します。
def case_1():
return "This is case 1"
def case_2():
return "This is case 2"
def default_case():
return "This is the default case"
switch_dict = {
1: case_1,
2: case_2
}
x = 1
print(switch_dict.get(x, default_case)())
このコードでは、switch_dict
という辞書がswitch
文の役割を果たしています。辞書のキーにはcase
文の条件を、値には各case
に対応する関数を設定しています。そして、dict.get
メソッドを使用して、入力x
に対応する関数を取得し、それを実行しています。入力x
が辞書に存在しない場合は、default_case
関数が実行されます。
この方法を使用すれば、Pythonでもswitch
文と同様の制御構造を実現することが可能です。ただし、この方法はあくまでswitch
文の代替手段の一つであり、他にもif-elif-else
文を使用する方法やPython 3.10以降で利用可能なmatch
文を使用する方法などがあります。
以上が、Pythonでのswitch
文の代替手段としてのdict.get
メソッドの使用方法になります。この情報がPythonのコーディングに役立つことを願っています。