我尝试在Enthought分发版中使用mayavi导入mlab,但失败了。
from enthought.mayavi import mlab
并且也随着技术发展
import enthought.mayavi
from enthought.mayavi import mlab
所以,我有一个想法,也许在包 mayavi 中可以添加一个空的 __init__.py 文件。
import mlab
但现在之前的命令会引发错误异常
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
import enthought.mayavi
File "C:\Python27\lib\site-packages\enthought\mayavi\__init__.py", line 1, in <module>
import mlab
File "C:\Python27\lib\site-packages\enthought\mayavi\mlab.py", line 3, in <module>
from mayavi.mlab import *
ImportError: No module named mayavi.mlab
我找到的一些线索表明,vtk可能是这个mlab导入问题的根本原因。我已经使用Tcl-Tk Installer安装了vtk。但实际上,enthought distribution已经包含了一些tvtk包。我将tvtk位置添加到了PYTHONPATH中。
然而,这仍然没有解决问题。
您有任何关于如何解决这种导入问题的想法吗?或者对使用enthought mlab有任何建议(可能需要已知的解决方法)?
谢谢和问候。
__init__.py
文件中放了什么?Python的导入机制中没有深奥的黑魔法,这些问题通常是由于环境混乱而导致PYTHONPATH出现问题,重复命名的包/模块已经进入PYTHONPATH,或者__init__.py
引起了一些错误。 - Silas Ray