当我运行这个时
from enum import Enum
class MyEnumType(str, Enum):
RED = 'RED'
BLUE = 'BLUE'
GREEN = 'GREEN'
for x in MyEnumType:
print(x)
Run Code Online (Sandbox Code Playgroud)
我按预期得到以下信息:
MyEnumType.RED
MyEnumType.BLUE
MyEnumType.GREEN
Run Code Online (Sandbox Code Playgroud)
是否可以从从其他地方获得的列表或元组创建这样的类?
也许与此有些类似:
myEnumStrings = ('RED', 'GREEN', 'BLUE')
class MyEnumType(str, Enum):
def __init__(self):
for x in myEnumStrings :
self.setattr(self, x,x)
Run Code Online (Sandbox Code Playgroud)
但是,与原始方式一样,我不想显式实例化对象。