是否有 py2exe 无法处理的主要/常见/重要包?
我目前正在研究从将使用 Tkinter、一些 Excel 文件读取模块、NumPy、SciPy 和 matplotlib 的 Python 程序创建 .exe 的可能性:尝试使用 py2exe 实现这一点是否现实?
是否有 py2exe 无法处理的主要/常见/重要包?
我目前正在研究从将使用 Tkinter、一些 Excel 文件读取模块、NumPy、SciPy 和 matplotlib 的 Python 程序创建 .exe 的可能性:尝试使用 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 与各种库的配合情况:
http://www.py2exe.org/index.cgi/WorkingWithVariousPackagesAndModules
对于此处未列出的任何内容,请启动快速谷歌搜索py2exe <package-name>