“专业人士笔记”系列目录:
创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!什么是enum枚举
在python中枚举是一种类(Enum,IntEnum),存放在enum模块中。枚举类型可以给一组标签赋予一组特定的值。
枚举的特点:
- 枚举类中不能存在相同的标签名
- 枚举是可迭代的
- 不同的枚举标签可以对应相同的值,但它们都会被视为该值对应第一个标签的别名
- 如果要限制定义枚举时,不能定义相同值的成员。可以使用装饰器@unique【要导入unique模块】
- 枚举成员之间不能进行大小比较,可进行等值和同一性比较
- 枚举成员为单例,不可实例化,不可更改
创建enum (Python 2.4+)
枚举enum原先在python3.4版本以下并不支持,通过安装模块 Python 3.4 Enum后可以反向移植,以支持python2.4+版本:
在python云环境的SSH命令端,输入:
python -m pip install enum34
即可支持python2.4+版本,详见:https://pypi.org/project/enum34/
接下来创建 enum并返回枚举本身:
from enum import Enum
class Color(Enum):
red = 1
green = 2
blue = 3
print(Color.red)
#输出Color.red
print(Color(1))
#输出 Color.red
print(Color['red'])
#输出Color.red
如果是定义枚举直接访问值:
class color(): #注意:参数中未带enum
YELLOW = 1
RED = 2
GREEN = 3
PINK = 4
# 访问枚举项
print(color.YELLOW) # 1
对enum的 迭代
from enum import Enum
class Color(Enum):
red = 1
green = 2
blue = 3
#迭代枚举类属性
for c in Color:
print(c);
#输出:
Color.red
Color.green
Color.blue
#迭代枚举类的属性成员
for c in Color.__members__:
print(c)
#输出:
red
green
blue
今天的分享就到这里,禁止转载,违者必究!
本文深入解析Python中的枚举类型,包括其特点、如何创建及使用枚举,以及枚举的迭代方式。同时,介绍了如何避免定义相同值的枚举成员,并提供了Python2.4+版本支持枚举类型的解决方案。

1671

被折叠的 条评论
为什么被折叠?



