from enum import IntEnum from typing import Optional class Priority(IntEnum): LOW = 0 MIDDLE = 1 HIGH = 2 values = [ Priority.LOW, Priority.MIDDLE, Priority.HIGH] def format(priority: Priority) -> str: if priority == Priority.LOW: return 'Low' elif priority == Priority.MIDDLE: return 'Middle' elif priority == Priority.HIGH: return 'High' def parse(string: str) -> Optional[Priority]: if string == 'Low': return Priority.LOW elif string == 'Middle': return Priority.MIDDLE elif string == 'High': return Priority.HIGH else: return None