Python枚举用法_Enum


# -*- coding: utf-8 -*-
from enum import Enum, unique


# 1. 枚举的定义
# 首先,定义枚举要导入enum模块。
# 枚举定义用class关键字,继承Enum类。


# 2. 如果要限制定义枚举时,不能定义相同值的成员。
# 可以使用装饰器@unique【要导入unique模块】

@unique
class SayDuck(Enum):
    BlackDuck = 1
    RedDuck = 2
    YelloDuck = 3
    PinkDuck = 4



if __name__ == '__main__':
    #3. 获取枚举值方式
    #3.1 通过成员值来获取成员
    print(SayDuck(1))
    #3.2 通过成员的名称来获取成员
    print(SayDuck['BlackDuck'])
    #3.3 通过成员,来获取它的名称和值
    print(SayDuck(1).name,SayDuck(1).value)

    #4. 枚举支持迭代器
    for n in SayDuck:
        print(n)
        print(n.value)

    #5. 如果枚举有值重复的成员,循环遍历枚举时只获取值重复成员的第一个成员
    #5.1 如果想把值重复的成员也遍历出来,要用枚举的一个特殊属性__members__

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/python/282386.html

(0)
上一篇 2022年8月26日 23:05
下一篇 2022年8月26日 23:05

相关推荐

发表回复

登录后才能评论