我可以使用 Class 或方法作为枚举 class 在 Python 中的值吗?

can i use Class or Method as Enum class's value in Python?

from enum import Enum


class A:
    def __init__(self, b):
        self.b = b


class TestEnum(Enum):
    a_name = A


a_class = TestEnum.a_name

a_instance = a_class(b=1)

print(type(a_instance))

### TypeError: 'TestEnum' object is not callable

我想使用 Class 作为枚举的值来指定 class 使用名称。但我无法为 Enum 值创建实例,因为它只是 Enum Class 而不是 A Class.

我可以举个例子吗?

我不确定你正在尝试做的事情是否是个好主意,但你可以使用

获得枚举的值
a_class = TestEnum.a_name.value
a_instance = a_class(b=1)
print(type(a_instance))