python - 重要的包和模块与 py2exe 不兼容?

标签 python excel executable matplotlib py2exe

是否有 py2exe 无法处理的主要/常见/重要包?

我目前正在研究从 Python 程序创建 .exe 的可能性,该程序将使用 Tkinter、一些 Excel 文件读取模块、NumPy、SciPy 和 matplotlib:尝试使用 py2exe 实现这一目标是否现实?

最佳答案

我通常使用 Scipy、matplotlib、wxpython 和 win32com 或 Machin 的 xlrd/xlwt 模块构建 py2exe 单文件可执行文件。从未使用过 Tkinter,但应该不是问题,可能 wxpython 更挑剔。

我在构建可执行文件之前和之后发现了 numpy/scipy、matplotlib 和 wxpython 的一些问题,但在您知道该怎么做之后,它就可以顺利工作了。

一些问题:

matplotlib 需要指示一些辅助文件的位置。您需要添加到 setup.py

datafiles = matplotlib.get_py2exe_datafiles()

在执行 py2exe 可执行文件时,由于模块中的一些表达式,numpy/scipy 给我带来了一些问题。 Numpy 有一些行,例如:

__doc__ += "something more"

__doc__ 为 None 时失败。
为此,我必须手动修改 numpy 脚本(包括 if 的)。不知道新版本是否解决了这个问题。

wxpython 通常是问题的根源,因为计算机中必须存在一些必需的 microsoft dll 才能工作。只是您必须小心,确保在包中提供它们,或者至少阻止您的用户了解该问题。

一些有用的提示也可以在 py2exe 中找到。和 wxpython维基百科

关于python - 重要的包和模块与 py2exe 不兼容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2912295/

相关文章:

python - 转置和分组 pandas 列

python aiohttp 进入现有的事件循环

python - np.squeeze 进行作业

arrays - VBA 根据电子表格中一行中保存的数据创建一个数组

python - 将 Excel 工作表添加到工作簿末尾

windows - 作为外部 .exe 启动与作为 Windows 服务启动,从性能角度来看,哪一个更有效?

python - 谁的正则表达式更快? python 或 perl

arrays - Excel 宏数组

compilation - 如何获得最小的 ocamlopt 编译的 native 二进制文件?

windows - Perl 到 Linux 上的静态可执行文件