Pythonのenum
モジュールは、一意の定数値に束縛された識別名(メンバー)の集合を提供します。このモジュールは、Enum
、IntEnum
、Flag
、IntFlag
の4つの列挙型クラスを定義しています。
列挙型のメンバーは、定義された順序になります。例えば、以下のようにColor
という列挙型を定義した場合、
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
Color.RED
、Color.GREEN
、Color.BLUE
の順序が保持されます。
また、列挙型は定義順でのイテレーションをサポートしています。以下の例では、Shake
という列挙型を定義し、そのメンバーを順に出力しています。
class Shake(Enum):
VANILLA = 7
CHOCOLATE = 4
COOKIES = 9
MINT = 3
for shake in Shake:
print(shake)
このコードを実行すると、Shake.VANILLA
、Shake.CHOCOLATE
、Shake.COOKIES
、Shake.MINT
が順に出力されます。
以上のように、Pythonのenum
モジュールは、一意の定数値に束縛された識別名の集合を提供し、その順序を保持する機能を持っています。これにより、プログラム内で一意の定数を効率的に管理することが可能になります。