假设我有这个枚举来存储所有不同的实体类型
class Entities(Enum):
TREE = auto()
ROCK = auto()
FLOWER = auto()
我想创建一个函数,它采用其中一个(TREE、ROCK...)枚举,并且知道枚举对应于我拥有的一个类。例如。:
def myFunc(EntityType):
return type(EntityType)
print(myFunc(Entities.ROCK))
>>>ROCK (where ROCK is an instance of the ROCK class)
如果有办法做到这一点,是否有一种方法,甚至可以初始化类,例如:
def myFunc(EntityType):
myObj = EntityType(pos=(0,0))
return myObj
如果您只是放弃auto
并使用类本身作为 的值Entities
怎么办?假设Tree
、Rock
和Flower
是您的类的名称:
class Entities(Enum):
TREE = Tree
ROCK = Rock
FLOWER = Flower
这Entities.TREE.value
是 的类构造函数Tree
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句