
python如何定义枚举类型
用户关注问题
Python中如何创建一个枚举类?
我想在Python代码里定义一个枚举类型,该怎么写出一个基础的枚举类?
使用enum模块定义枚举类
Python里通过导入标准库中的enum模块,可以很方便地定义枚举类型。你需要继承enum.Enum类,然后将枚举成员作为类属性赋值,例如:
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
这样Color就是一个枚举类,包含了RED、GREEN、BLUE三个枚举成员。
如何访问Python枚举类型中的成员及其值?
定义好Python的枚举类后,我要怎么获取其中的成员名或者对应的值?
使用枚举成员名和value属性访问
可以通过指定成员名直接访问枚举成员,比如Color.RED,枚举成员还拥有name属性和value属性,分别表示成员的名字和对应的值。示例:
print(Color.RED) # 输出 Color.RED
print(Color.RED.name) # 输出 'RED'
print(Color.RED.value) # 输出 1
Python枚举类型支持哪些常用功能?
Python中定义的枚举类型可以进行比较操作吗?是否能遍历所有枚举成员?
枚举支持比较及遍历等操作
Python的枚举成员是单例,支持相等比较,可以使用循环遍历所有成员。你可以用for循环遍历枚举类获得所有成员,也可以用is比较枚举成员。例如:
for color in Color:
print(color.name, color.value)
if Color.RED is Color.GREEN:
print('相等')
else:
print('不相等')
这会列出所有颜色名称和值,并判断两个枚举成员是否相同。