我在Python 2.7中使用Enum backport enum34。
根据文档,应该可以使用项目访问权限通过名称访问枚举成员。也就是说,以下内容应该有效:
from enum import Enum
class Foo(Enum):
bar = 1
baz = 2
print(Foo['bar'])
然而,当我运行代码时,我在最后一行得到了这个错误:
TypeError:' type'对象没有属性'
__getitem__
'
我在这里遗漏了一些东西,或者这个功能只是没有在2.7 backport中实现?
答案 0 :(得分:8)
您可能与Enum模块发生冲突。试试这个:
pip uninstall Enum
安装Enum
和Enum34
时,这不起作用。卸载Enum
后,它就像一个魅力。