Python 枚举(Enum)

在其他语言中,大部分都有枚举的存在,旨在对一组相似的值进行范围的限定,那么在Python中需要实现枚举,需要使用enum模块。

enum模块提供三个对象:

Enum:一般的枚举,其值可以是任何类型。

IntEnum:值只能是数字(10进制,16进制,8进制)类型。

unique:修饰器,表示其值是否唯一。

定义方式:

(一):Enum 

import enum

@enum.unique
class MyEnum(enum.Enum):
Enum1 = 1
Enum2 = 2
Enum3 = "TTT"

 unique:限定枚举值唯一,当出现值重复时,将抛出异常。

print MyEnum.Enum3              # MyEnum.Enum3
print MyEnum.Enum3.name # 取枚举名Enum3
print MyEnum.Enum3.value # 取枚举值 TTT

(二):IntEnum

@enum.unique
class MyEnum(enum.IntEnum):
Enum1 = 1
Enum2 = 2
Enum3 = 3

print MyEnum.Enum3 # MyEnum.Enum3
print MyEnum.Enum3.name # 取枚举名Enum3
print MyEnum.Enum3.value # 取枚举值 3

当值为非整数时,将抛出异常。






上一篇:java枚举类型enum用法


下一篇:TypeScript初识之枚举类型