我有一个包含模块的Python包:
我的套餐
|----> 我的模块
我想将枚举定义为模块的静态属性。我在Houdini中使用Python 2.7的enum34模块
#myModule.py
from enum import Enum
class DebugStates(Enum):
release = 1
debug = 2
在另一个Python文件中,我尝试导入myModule:
#OtherPython.py
from myPackage import myModule
在胡迪尼启动时执行。 这执行没有错误,但是当我尝试拉起 Python 控制台时,我收到此错误并且 Houdini 崩溃:
"Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
"
勒叹了口气,我刚刚想通了,我正在更改我的模块名称以保护我问题中的无辜者。 在现实生活中,我试图将我的模块称为"全局变量",认为包的行为类似于命名空间边界。 显然不是一个好主意。