Python 获取 Enum 中的元素个数的方法
使用 len()
函数获取枚举中的元素数,例如 len(Color)
。 len() 函数返回对象的长度(项目数),可以直接传递一个枚举。
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
YELLOW = 3
print(len(Color))
上面代码示例的运行结果为 3
函数采用的参数可以是序列(字符串、元组、列表、范围或字节)或集合(字典、集合或冻结集合)。
len() 函数返回对象的长度(元素个数)。
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
YELLOW = 3
PURPLE = 1 # ?️ duplicate value
print(len(Color)) # ?️ 3
请注意,名称为 PURPLE 的成员的值 1 已包含在枚举中,因此 len()
函数会跳过它。
枚举支持迭代,因此我们可以使用列表推导来获取所有枚举名称或值的列表。
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
YELLOW = 3
names = [member.name for member in Color]
print(names) # ['RED', 'GREEN', 'YELLOW']
values = [member.value for member in Color]
print(values) # [1, 2, 3]
如果需要遍历枚举,也可以使用简单的 for 循环。
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
YELLOW = 3
for color in Color:
print(color)
print(color.name, color.value)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。