枚举类
常量一般用大写来定义,但是有相关关系的一组常量一般都是使用类来定义,每个常量都是类的唯一实例。Python在这里提供了枚举类来辅助完成这项工作。
以下给出一个示例。
from enum import Enum
Weekday = Enum('Weekday', ('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'))
print(Weekday.Mon) # 访问成员
# 迭代成员
for name, member in Weekday.__members__.items():
print("{} => {}".format(name, member))
也可以使用以下方法来精确控制枚举类的定义。
from enum import Enum, unique
# @unique可以用来保证没有重复值出现
@unique
class Weekday(Enum):
Sun = 0
Mon = 1
Tue = 2
Wed = 3
Thu = 4
Fri = 5
Sat = 6