Masayan tech blog.

  1. ブログ記事一覧>
  2. Pythonでmatch-case文を活用してIf分をわかりやすくする

Pythonでmatch-case文を活用してIf分をわかりやすくする

公開日

環境

  • Windows 10
  • Python 3.10.1
  • VSCode

実装

データベースに登録されているタスク一覧があると仮定し、そのタスクにはステータスに応じて処理を分岐させるプログラムとする

タスクの状態を表すEnum

TaskType.py

from enum import Enum

class TaskType(Enum):
    YET = 1
    PROGRESS = 2
    DONE = 3

処理を分岐するプログラム

  • タスクのステータスに応じてmatch~case文で処理
  • デフォルト処理の分岐は、case_: のブロックに記述する

task.py

# タスクの種別に応じて処理を分ける
match TaskType(task.status):
  case TaskType.YET:
    ..
  case TaskType.PROGRESS
    ..
  case TaskType.DONE:
    ..
  case _:
    # デフォルトの処理

まとめ

いかがでしたでしょうか。本記事では、Pythonでmatch-case文を活用してIf分をわかりやすくするについて紹介しています。ぜひ参考にしてみてください