はじめに
にゃーすけ
PythonでSelect case文を使用したいにゃ。
どうすればできるのかにゃあ。
しげっち
Pythonのバージョンによるけど、3.9まではif文で代用するしかないんだ。
3.10以上であればmatch文を用いれば実現できるよ!
それぞれ解説していくよ。
Select caseをif文で代用する
使用しているPythonのバージョンが3.9以下の場合はSelect caseのような書き方はできません。
if文で書いていく事になります。
サンプルを見てみましょう。
food = 'シュークリーム'
if food == 'アイスクリーム':
print("ひんやり甘くて大好きだにゃ。")
elif food == 'ショートケーキ':
print('生クリームは飲み物だにゃ。')
elif food == 'シュークリーム':
print('これも飲み物だにゃ。')
elif food == 'ピーマン':
print('しげっちにあげるにゃ。')
else:
print('甘いものならどんと来いだにゃ')
# 実行結果
# これも飲み物だにゃ。
ifとelifを用いて条件を書いていきます。
どれにも当てはまらない場合は、elseの処理になります。
match文を使用する
match文はPythonのバージョン3.10から新たに導入されました。
早速サンプルを見てみましょう。
food = 'シュークリーム'
match food:
case 'アイスクリーム':
print("ひんやり甘くて大好きだにゃ。")
case 'ショートケーキ':
print('生クリームは飲み物だにゃ。')
case 'シュークリーム':
print('これも飲み物だにゃ。')
case 'ピーマン':
print('しげっちにあげるにゃ。')
case _:
print('甘いものならどんと来いだにゃ')
# 実行結果
# これも飲み物だにゃ。
matchの隣に式(例の場合food)を書き、式に当てはまる条件をcaseの隣に書きます。
どの条件にも当てはまらない場合はcaseの隣にアンダーバー(_)を書いたものが対象となり、その中の処理を実行します。
まとめ
PythonでSelect case文はありません。
使用するPythonのバージョンにより、if文で代用するかmatch文を使用します。
- Pythonのバージョンが3.9以下の場合はif文で代用する
- Pythonのバージョンが3.10以上の場合はmatch文が使用できる
にゃーすけ
サンプルにデザートで例えてくれたからよく理解できたにゃ!
しげっち
ていうか、ピーマンも食べてね!