亲宝软件园·资讯

展开

Python enum

phac12 人气:0

为什么要使用Enum.(Why?)

在普通类别中,枚举和我们在对象中定义的类变量一样的,每一个类变量就是一个枚举项,

访问方式如下:

class HelloWolrd:
    life = 0
    literature = 1
    science = 2
    math = 3
    person = -1
    xzh = 0
    lq = 3
    wj = 2

print(HelloWolrd.lq)
HelloWolrd.lq = 9
print(HelloWolrd.lq)

在这里插入图片描述

这样的使用方法是存在两个问题的,即:

枚举类中,不应该存在key相同的枚举项(类变量) 不允许在类的外部直接修改枚举项的值

为了解决这个问题,我们考虑使用enum模块.

使用enum

enum模块是系统内置模块,可以直接使用import导入,但是在导入的时候,不建议直接使用import enum将enum模块全部导入,一般使用Enum, IntEnum,unique等.

from enum import Enum
class HelloWolrd(Enum):
    literature = 1
    person = -1
    xzh = 0
    lq = 3
    wj = 2

print(HelloWolrd.lq)
print(HelloWolrd.lq.value)

使用了Enum后面,有下面的限制:

如果在枚举类中的不同的key对应的value也想不同,那么在导入Enum的同时,需要导入unique如果想要value都是Int类型的,可导入IntEnum

加载全部内容

相关教程
猜你喜欢
用户评论