import:: import enum doc:: enum


枚举一般用来表示特定的有限集合,比如星期,月份等。

创建

import enum
 
# 通过继承创建枚举类
class Weekday(enum.Enum):
    Sun = 0
    Mon = 1
    Tue = 2
    Wed = 3
    Thu = 4
    Fri = 5
    Sat = 6
 
# value 类名,names 对应成员 (会自动赋值)
Weekday = enum.Enum(
                    value="Weekday",
                    names=(
                           "Sun",
                            "Mon",
                            "Tue",
                            "Wed",
                            "Thu",
                            "Fri",
                            "Sat"
    )
)
 
Weekday.Sun       # 返回 Weekday.Sun
Weekday.Sun.name  # 返回 Sun
Weekday.Sun.value # 返回 0

第二种创建方式如果想手动赋值,可以 names 由元组改为列表,并包含对应的键和值:

names=[
        ("Sun", 8),
        ("Mon", 1),
]