PythonのEnumを使うと、名前付きの定数セットを作成できます。これは、特定の値が取りうる範囲を制限したい場合や、コードの可読性を向上させたい場合に便利です。しかし、Enumの値からそのメンバー名を取得する方法は一見するとわかりにくいかもしれません。この記事では、その方法を説明します。
Enumの値からメンバー名を取得する
Enumの値からメンバー名を取得するには、値をEnumクラスに渡し、name
属性をアクセスします。以下に例を示します。
from enum import Enum
class Example(Enum):
one = 1
two = 2
ex_variable = 1
print(Example(ex_variable).name) # 'one'
このコードでは、Example
というEnumクラスを定義し、one
とtwo
という2つのメンバーを持たせています。ex_variable
に1を代入し、これをExample
クラスに渡しています。その結果、Example(ex_variable).name
は'one'
を返します。
この方法は、ファイルから読み込んだりAPIから取得したりしたEnumのメンバー名を事前に知らない場合に便利です。
まとめ
PythonのEnumは、名前付きの定数セットを作成するための便利なツールです。Enumの値からそのメンバー名を取得する方法を知っておくと、Enumをより効果的に使用できます。この記事が、PythonのEnumを使う際の参考になれば幸いです。