小编Kee*_*ong的帖子

自动将枚举成员的值设置为其名称

我一直在搞乱python的枚举库,并遇到了一个难题.在文档中,它们显示了一个自动编号枚举的示例,其中定义了一些内容:

class Color(AutoNumber):
    red = ()
    green = ()
    ...
Run Code Online (Sandbox Code Playgroud)

我想创建一个类似的类,但是该值将自动从成员的名称设置并保留从执行strmixin中获得的功能enum

所以类似于:

class Animal(MagicStrEnum):
    horse = ()
    dog = ()

Animal.dog == 'dog' # True
Run Code Online (Sandbox Code Playgroud)

我已经查看了枚举模块的源代码,并尝试了很多变化__new__EnumMeta

python enums metaprogramming metaclass

16
推荐指数
2
解决办法
8919
查看次数

标签 统计

enums ×1

metaclass ×1

metaprogramming ×1

python ×1