【问题标题】:Pip enum on windowsWindows 上的 pip 枚举
【发布时间】:2018-03-04 06:51:43
【问题描述】:

我可以使用枚举。在 Ubuntu、python 2.7 上运行良好

在 windows python 2.7 上,我使用 pip 加载了枚举

pip install enum

pip install Enum

当我在 Windows 上运行程序时:

from enum import Enum

class Foo(Enum):
    A = 0
    B = 1

我得到了错误

# ÔÇÿenumÔÇÖ 的一部分,该包为 Python 提供枚举类型。 ImportError:无法在第 1 行导入名称枚举

有人可以帮忙吗?

【问题讨论】:

  • pip 上有很多枚举包,Python 3.4+ 包含一个枚举模块。此处需要更多详细信息。
  • 那个 enum 包似乎提供了一个不同的 enum 实现。如果您正在寻找 python3.4 枚举功能的反向移植,请查看enum34

标签: python python-2.7 enums pip


【解决方案1】:

我意识到 Enums 包适用于 Python 3,而我使用的是 Python 2.7

由于某种原因,它在 Ubuntu 上运行正常,但在 Windows 上却不行

所以我求助于使用字典:

Foo = {'A':1, 'B':2, 1:'A', 2:'B'}

【讨论】:

    【解决方案2】:

    Enum 包好像应该这样使用

    Foo = Enum("A","B","C","D",...)
    print(Foo.A)
    

    这并没有解决您的问题...但是在您的示例中,根本没有理由使用 Enum 类

    class MyEnum(object):
         A = 0
         B = 1
    
    print(MyEnum.A)
    

    【讨论】:

    • 这并没有提供我正在寻找的功能。我同时使用 Foo['bar'].value 和 Foo(bar).name
    猜你喜欢
    • 1970-01-01
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-22
    • 2015-08-08
    相关资源
    最近更新 更多