Pythonでのswitch文の書き方
Pythonでは他のプログラミング言語でみられるようなswitch文やcase文は存在しません。
この記事では、switch文やcase文を使わない記述方法を紹介します。
switch文の代用としてif-elif-else文を使う
Pythonではswitch文の代用としてif-elif-else文がよく使われます。
str = "A"
if str = "A" or str == "B":
print "a or b"
elif str == "C":
print "c"
elif str == "D":
print "d"
else:
print "unknown"
上のプログラムでは「str == “A”」の条件式をみたすので、「a or b」が表示されます。
さらに簡潔な書き方
上の例では「str == “A” or str == “B”」のように「str ==」の部分を何度も記述しなければなりませんでした。
このような場合は「if x in 辞書」という記述方法を使えばより簡潔に記述できます。
str = "A"
if str in {"A", "B"}:
print "a or b"
elif str == "C":
print "c"
elif str == "D":
print "d"
else:
print "unknown"
「if x in 辞書」は「x」が辞書の中に含まれているならifのブロック内の処理を行います。