无法从使用pandas的Python程序构建.exe

时间:2015-09-08 18:16:01

标签: pandas python-3.4 py2exe pyinstaller cx-freeze

我正在使用pyinstaller来构建独立的可执行文件。 Pyinstaller成功生成可执行文件,但是当我运行.exe时出现以下错误:

  

ImportError:C扩展名:'lib'未构建。如果要导入   来自源目录的pandas,您可能需要运行'python setup.py build_ext --inplace'来首先构建C扩展。

在我尝试解决问题的过程中,我去了C:\ Python34 \ Lib \ site-packages \ pandas中查找'setup.py'文件,但没有在那里找到。我还使用pip卸载了pandas,然后从www.lfd.uci.edu/~gohlke/pythonlibs/的.whl文件重新安装。我也搜索了错误,发现似乎有类似问题的人here。在这种情况下,问题是通过运行'python setup.py build_ext --inplace --force'解决的,但同样,我在pandas目录中找不到setup.py。我还发现了“只使用Linux”的建议,但这不是一个选择,因为这是为了工作。我也尝试使用py2exe和cx_freeze构建可执行文件,但这些都不起作用。

我在Windows 7下使用Python 3.4,当我从PyCharm内部运行时,程序运行正常。我如何获得独立的.exe?

编辑:

在使用py2exe构建可执行文件并运行它之后,我得到的错误是:

  

ImportError :( DLL加载失败:指定的模块不能   找到。)   'C:\用户\ aarjad \ PycharmProjects \ MyProgram \ DIST \ scipi.special._ufuncs.pyd')

但是,'scipi.special._ufuncs.pyd'就在那个文件夹中,所以我不知道那里会发生什么。

使用cx_freeze构建可执行文件并运行它后,我得到的错误是:

  

ImportError:导入scipi时出错:您无法导入scipi   在scipi源目录中;请退出schy源代码树   首先,然后重新启动你的python解释器。

1 个答案:

答案 0 :(得分:0)

这个问题是通过将statsmodels包中的lowess函数从cython移植到python来解决的,因此无需导入statsmodels包,这就是pyinstaller所窒息的。