PythonのEnumは、一連の記号名(メンバー)を一意の値に結びつけるもので、グローバル変数に似ていますが、より有用なrepr()、グルーピング、型安全性、およびいくつかの他の機能を提供します。
Enumは、クラス構文を使用するか、関数呼び出し構文を使用することで作成されます。以下に、Enumクラスの基本的な使用例を示します。
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
このコードでは、Colorという名前のEnumクラスを定義し、RED、GREEN、BLUEという3つのメンバーを持つことを示しています。各メンバーは一意の整数値(1、2、3)に関連付けられています。
Enumのメンバーは、その名前(例:Color.REDの名前はRED)と値(例:Color.BLUEの値は3)を持ちます。
Enumは、Python 3.4で新たに追加された機能であり、その後のバージョンではさらに機能が追加されています。例えば、Python 3.6からはauto関数が追加され、Enumのメンバーに自動的に値を割り当てることができるようになりました。
また、Python 3.11では、StrEnumの追加や、制約を検証できるverify()デコレータの追加など、いくつかの更新がありました。
以上がPythonのEnumについての基本的な説明です。より詳細な情報や高度なトピックについては、公式ドキュメンテーションを参照してください。