9

我将 Enum backport enum34与 Python 2.7 一起使用。

根据文档,应该可以使用项目访问按名称访问枚举成员。也就是说,以下应该有效:

from enum import Enum

class Foo(Enum):
    bar = 1
    baz = 2

print(Foo['bar'])

但是,当我运行代码时,我在最后一行收到此错误:

TypeError:“类型”对象没有属性“ __getitem__

我在这里遗漏了什么,或者这个功能只是没有在 2.7 backport 中实现吗?

4

1 回答 1

8

您可能会与 Enum 模块发生冲突。尝试这个:

pip 卸载枚举

两者都Enum安装Enum34了,这不起作用。卸载后Enum,它就像一个魅力。

于 2015-09-22T15:05:42.070 回答