当前位置: 首页 > 面试题库 >

Python可执行文件:py2exe或PyInstaller?

祁杰
2023-03-14
问题内容

为了创建可执行文件(Windows),我假设我们应该使用其中之一:Py2exe或PyInstaller。

它们之间有什么区别?


问题答案:

Py2exe和PyInstaller都是包装器,但是我注意到了一些区别,

  1. Py2exe与python2.4 +兼容,包括python3.0和3.1,而PyInstaller当前与python 2.7和3.3–3.5兼容
  2. 据我所知,Py2exe不支持签名,而Pyinstaller支持1.4版以上的签名
  3. 在PyInstaller中,很容易创建一个exe。默认情况下,两个都创建一堆exe和dll。
  4. 在py2exe中,它更易于将清单文件嵌入exe,对于在Windows Vista及更高版本中以管理员模式运行很有用。
  5. Pyinstaller是模块化的,具有挂钩功能,可以在所需的构建中包含文件。我不了解py2exe中的此功能。

希望这对您的决策有所帮助。

[更新]-看起来PyInstaller正在积极开发(https://github.com/pyinstaller/pyinstaller/)并已发布。py2exe仍在使用sourceforge,其发布周期在pypi上非常随机,2014年后没有构建,其代码也显示了2017年的发展(https://sourceforge.net/p/py2exe/svn/HEAD/tree/trunk/
py2exe-3 / py2exe
/

)。因此,我建议使用pyinstaller直到py2exe稳定其发布周期,以对开发人员有利。



 类似资料:
  • 问题内容: 我以为我听说py2exe可以做到这一点,但我从来没有想过。有人成功做到了吗?我可以看到您的setup.py文件以及使用的哪些命令行选项吗? 基本上,我在考虑给它一个可执行文件,该文件执行诸如将自身解压缩到/ temp并运行的操作。 问题答案: 将创建一个没有依赖关系的.exe文件;使用该选项。它通过将所有需要的共享库打包到可执行文件中,然后在运行之前解压缩它们来完成此操作,正如你所描述

  • 问题内容: 我在XP上使用python 2.6。我刚刚安装了py2exe,并且可以从hello.py成功创建一个简单的hello.exe。但是,当我尝试在实际程序上使用py2exe时,py2exe会生成一些信息消息,但无法在dist文件夹中生成任何内容。 我的setup.py看起来像这样: 和py2exe输出看起来像这样: py2exe似乎已经找到了我的所有导入文件(尽管看到win32时我感到有些

  • 我对编程非常陌生,而且对在UNIX环境中编程也非常陌生,所以请耐心听我说。 当我跑的时候 在我的Python 3控制台中,输出是 我可以导入我用pip3安装的任何库,没问题。当我在运行Python3内核的Jupyter笔记本中这样做时,输出是 我无法访问与pip3一起安装的库。我能做些什么来修复它,让Jupyter从正确的位置执行Python,这样我就可以使用我为Python3安装的任何东西和pi

  • 问题内容: 我在安装psycopg2时遇到问题。我尝试执行以下操作时收到以下错误pip install psycopg2: 但是问题出在我身上PATH; 它运行没有任何问题: 我尝试将径添加到文件中,并使用从其网站(http://initd.org/psycopg/)下载的源文件进行构建,然后收到以下错误消息! 但实际上是那里!!! 这些错误使我感到困惑。有人可以帮忙吗? 顺便说一下,我sudo所

  • 终端中使用lldb运行可执行文件 进入lldb环境, 在终端内输入lldb回车 lldb 使用file命令, 将可执行文件包装成一个target (lldb) file test Current executable set to '/Users/shenyj/Documents/CodeForTest/staticOCLib/test' (x86_64). 运行可执行文件, 在刚刚的l

  • 我创建了一个个人使用的基本应用程序。我的应用程序的支持使用快速Api和SQLite数据库。通常要运行我的启动和运行我的后端服务器,我必须使用以下命令: 我以前见过其他人创建python可执行文件。我也想这样做,但我需要它来启动uvicorn服务器。如何创建运行uvicorn服务器的python可执行文件? 还是只编写一个执行此操作的批处理脚本更好?