0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python】nameとvalueからEnumを取得する

Posted at

概要

Pythonにて指定した値でEnumを取得する場合、nameとvalueの双方から可能です。基本的にはConvert string to Enum in Pythonのstackoverflowの回答に書いてある通りですが、実際に動かしてみたのでメモ書きを残しておきます。

前提

  • 使用したPythonのバージョンは3.13.0です。

実装サンプル

まずは以下の通り、Enumを用意します。

from enum import Enum


class SampleEnum(Enum):
    Key1 = "value1"
    Key2 = "value2"
    Key3 = "value3"

nameから取得する際の実装です。以下の通り[]で取得したいnameを指定します。なお、存在しないnameを指定した場合はKeyErrorが発生します。

# nameからenumを取得
enum = SampleEnum["Key1"]

# これはKeyError
# enum = SampleEnum["Key4"]

次にvalueから取得する際の実装です。以下の通り()で取得したいnameを指定します。なお、存在しないvalueを指定した場合はValueErrorが発生します。

# valueからenumを取得
enum = SampleEnum("value2")

# これはValueError
# enum = SampleEnum("value4")
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?