支持序列、位掩码和字符串枚举的枚举模块
yaenum的Python项目详细描述
另一个枚举器是支持三种不同类型枚举的枚举模块:
- sequence enums (0, 1, 2, 3, etc.)
- base 2 bitmask enums (0, 1, 2, 4, 8, etc.)
- string enums (‘top’,’bottom’,’left’,’right’, etc.)
每个枚举都是它自己的类,该类的实例是单例的。除了作为一个值,枚举实例还可以有自己的行为(用例,任何人?).
创建枚举非常简单:
from yaenum import Enum, BitMaskEnum, UniqueEnum, enum Enum.create('Color', 'red green blue', export=globals())
或:
class Color(BitMaskEnum): # python 3+ only black red green blue
如果这对你来说太神奇了:
class Color(BitMaskEnum): black = enum() # python 2: enum(value=0) etc. red = enum() green = enum() blue = enum()