程序员技术文Python

Python 中愉快地使用 enum

2016-12-04  本文已影响2773人  hezhiming

枚举类型,到底需要不需要?

Python 2.x 中是没有原生的枚举类型的,可能有些人觉得这不算个事,他们使用类,字典,或者元组来封装成枚举类型,但是这样做,一来不方便,二来稍显别扭,三是拓展性还不好。

我觉得枚举类型还是要有的,有些场景下,定义一个枚举类,就是很方便,看着也舒服自然。

Python 2.x,Python 3.x 中如何使用枚举

Python 2.x 中需要安装一个第三方包(pip install enum34)。
然后使用

import enum


class BugStatus(enum.Enum):

    new = 7
    incomplete = 6
    invalid = 5
    wont_fix = 4
    in_progress = 3
    fix_committed = 2
    fix_released = 1

Python 3.x 中已经内置了这个包,只需要从标注库中导入就可以了。

import enum


class BugStatus(enum.Enum):

    new = 7
    incomplete = 6
    invalid = 5
    wont_fix = 4
    in_progress = 3
    fix_committed = 2
    fix_released = 1

至此,我们就可以愉快地使用枚举来封装我们的逻辑了,确实是方便不少,也很自然。

上一篇下一篇

猜你喜欢

热点阅读