当前位置:  开发笔记 > 编程语言 > 正文

在python中枚举的用例是什么?

如何解决《在python中枚举的用例是什么?》经验,为你挑选了0个好方法。

我已经写了大约3年的Python 2代码了,虽然我已经知道很长一段时间的枚举,但我们已经开始在我们的项目中使用它们(backported - pypi package enum34).

我想知道何时使用它们.

我们开始使用它们的一个地方是将一些postgres数据库级枚举映射到python枚举.因此我们有这个枚举类

class Status(enum.Enum):
    active = 'active'
    inactive = 'inactive'

但是当使用这些时,我们最终会像这样使用它们:

if value == Status.active.value:
    ...

因此,在这种情况下使用枚举比仅仅使用更简单的类更有帮助

class Status(object):
    active = 'active'
    inactive = 'inactive'

因为我们可以更容易地使用它,比如value == Status.active.

到目前为止,我发现这个有用的唯一地方 - 虽然不如我想的那么有用 - 是在文档字符串中.我没有明确说明允许的值是"活动"和"非活动",而是可以声明我的形式参数需要一个Status枚举的成员(当存在更多状态时更有帮助)

所以我真的不知道它们的确切用例是什么 - 我不知道它们如何比字符串常量更好.

简而言之:何时使用枚举?

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有