環境
- Windows 10
- Python 3.10.1
- VSCode
実装
データベースに登録されているタスク一覧があると仮定し、そのタスクにはステータスに応じて処理を分岐させるプログラムとする
タスクの状態を表すEnum
from enum import Enum
class TaskType(Enum):
YET = 1
PROGRESS = 2
DONE = 3
処理を分岐するプログラム
- タスクのステータスに応じてmatch~case文で処理
- デフォルト処理の分岐は、case_: のブロックに記述する
# タスクの種別に応じて処理を分ける
match TaskType(task.status):
case TaskType.YET:
..
case TaskType.PROGRESS
..
case TaskType.DONE:
..
case _:
# デフォルトの処理
まとめ
いかがでしたでしょうか。本記事では、Pythonでmatch-case文を活用してIf分をわかりやすくするについて紹介しています。ぜひ参考にしてみてください