如何将 .py 转换为 Python 的 .exe?
- 2024-11-29 08:42:00
- admin 原创
- 129
问题描述:
我正在尝试将一个相当简单的 Python 程序转换为可执行文件,但找不到我想要的内容,所以我有几个问题(我正在运行 Python 3.6):
到目前为止我发现的方法如下
下载旧版本的 Python 并使用
pyinstaller/py2exe
在 Python 3.6 中设置一个虚拟环境,以便我能够执行 1。
下载 Python 到 C++ 转换器并使用它。
这是我尝试过的/遇到的问题。
我
pyinstaller
之前安装了所需的下载(pypi-something),所以它不起作用。下载必备文件后,pyinstaller
仍然无法识别它。如果我在 Python 2.7 中设置虚拟环境,我是否真的需要安装 Python 2.7?
类似地,我看到的唯一的 Python 到 C++ 转换器只适用于 Python 3.5 之前版本 - 如果尝试这样做,我是否需要下载并使用此版本?
解决方案 1:
在 Python 3.6 中将 .py 转换为 .exe 的步骤
安装Python 3.6。
安装 cx_Freeze,(打开命令提示符并输入
pip install cx_Freeze
。安装 idna,(打开命令提示符并输入
pip install idna
。编写一个
.py
名为的程序myfirstprog.py
。setup.py
在脚本的当前目录中创建一个名为的新 python 文件。在
setup.py
文件中,复制下面的代码并保存。按住 Shift 键并右键单击同一目录,这样您就可以打开命令提示符窗口。
在提示符中输入
python setup.py build
如果您的脚本没有错误,那么创建应用程序就不会有问题。
检查新创建的文件夹
build
。它里面还有另一个文件夹。在该文件夹中,您可以找到您的应用程序。运行它。让自己开心。
原始脚本请见我的博客。
设置.py:
from cx_Freeze import setup, Executable
base = None
executables = [Executable("myfirstprog.py", base=base)]
packages = ["idna"]
options = {
'build_exe': {
'packages':packages,
},
}
setup(
name = "<any name>",
options = options,
version = "<any number>",
description = '<any description>',
executables = executables
)
编辑:
确保
myfirstprog.py
您应该输入在步骤 4.py
中创建的扩展文件名;您应该将每个
import
ed 包都包含在您的.py
intopackages
列表中(例如packages = ["idna", "os","sys"]
:)any name, any number, any description
文件中的setup.py
内容不应保持不变,您应该相应地进行更改(例如name = "<first_ever>", version = "0.11", description = ''
:)在开始步骤 8
import
之前,必须安装 ed包。
解决方案 2:
PyInstaller 支持 Python 3.6。
在 Python 文件夹中打开一个 cmd 窗口(打开命令窗口并使用cd
或 按住 shift,在 Windows 资源管理器上右键单击它并选择“在此处打开命令窗口”)。然后只需输入
pip install pyinstaller
就是这样。
最简单的使用方法是在命令提示符下输入
pyinstaller file_name.py
有关如何使用它的更多详细信息,请查看这个问题。
解决方案 3:
GitHub 上有一个名为 auto-py-to-exe 的开源项目。实际上它也只是在内部使用 PyInstaller,但由于它有一个控制 PyInstaller 的简单 GUI,因此它可能是一个舒适的替代方案。与其他解决方案相比,它还可以输出独立文件。他们还提供了一个视频来展示如何设置它。
图形用户界面(GUI):
输出:
或者直接使用 pyinstaller:
pip install pyinstaller
pyinstaller filename
解决方案 4:
我无法告诉你什么是最好的,但我过去成功使用的工具是cx_Freeze。他们最近(2017 年 1 月 7 日)更新到版本 5.0.1,它支持 Python 3.6。
这是 pypi
https://pypi.python.org/pypi/cx_Freeze
文档显示有多种方法可以做到这一点,具体取决于您的需要。http
://cx-freeze.readthedocs.io/en/latest/overview.html
我还没有尝试过,所以我要指出一篇讨论过简单方法的帖子。不过有些事情可能会改变,也可能不会改变。
如何使用 cx_freeze?
解决方案 5:
现在您可以使用 PyInstaller 进行转换。它甚至可以与 Python 3 一起使用。
步骤:
启动你的电脑
打开命令提示符
输入命令
pip install pyinstaller
安装完成后,使用命令“cd”转到工作目录。
运行命令
pyinstaller <filename>
解决方案 6:
我一直在我的包 PySimpleGUI 中使用 Nuitka 和 PyInstaller。
Nuitka
tkinter 与 Nuikta 编译时出现问题。项目贡献者之一开发了一个脚本来修复此问题。
如果您不使用 tkinter,它可能“刚好适合您”。如果您使用 tkinter,请告知,我会尝试发布脚本和说明。
PyInstaller
我正在运行 3.6,PyInstaller 运行良好!我用来创建 exe 文件的命令是:
pyinstaller-wF myfile.py 复制代码
-wF 将创建一个 EXE 文件。由于我的所有程序都有 GUI,并且我不想显示命令窗口,因此 -w 选项将隐藏命令窗口。
这与运行用 Python 编写的 Winforms 程序非常接近。
[2019 年 7 月 20 日更新]
有一个基于 PySimpleGUI GUI 的解决方案,它使用 PyInstaller。它使用 PySimpleGUI。它被称为pysimplegui-exemaker,可以通过 pip 安装。
pip install PySimpleGUI-exemaker
安装后运行:
python -m pysimplegui-exemaker.pysimplegui-exemaker
解决方案 7:
最好和最简单的方法肯定是自动 py 到 exe,我已经给出了下面的所有步骤和警告,您只需 5 分钟即可获得最终的 .exe 文件,因为您无需学习任何内容即可使用它。
1.) 我猜想它可能不适用于某些设备上的 python 3.9。
2.) 安装 Python 时,如果您选择了“将 Python 3.x 添加到路径”,请从开始菜单打开命令提示符,然后键入pip install auto-py-to-exe
以进行安装。您必须在命令提示符上按 Enter 键才能获得您键入的行的结果。
3.) 安装完成后,在命令提示符上,您只需键入即可auto-py-to-exe
打开它。它将打开一个新窗口。第一次可能需要一分钟。此外,关闭命令提示符也会关闭 auto-py-to-exe,因此在 .exe 文件准备好之前不要关闭它。
4.) 您将看到制作 .exe 文件所需的所有按钮,其屏幕截图如下所示。此外,对于图标,您需要一个 .ico 文件而不是图像,因此要转换它,您可以使用https://convertio.co/
5.) 如果您的脚本使用外部文件,您可以通过 auto-py-to-exe 添加它们,并且在脚本中,您必须对它们的路径进行一些更改。首先,import sys
如果尚未写入,则必须写入;其次,您必须为例如创建一个变量;第三,如果 example.png 不在任何文件夹中,则location=getattr(sys,"_MEIPASS",".")+"/"
其位置将是。location+"/example.png"
6.) 如果显示任何错误,可能是因为名为 setuptools 的模块不是最新版本。要将其升级到最新版本,在命令提示符下,您必须写入pip install --upgrade setuptools
。此外,在脚本中,写入import setuptools
可能会有帮助。如果 setuptools 的版本高于 50.0.0,那么一切都应该没问题。
7.) 完成所有这些步骤后,在 auto-py-to-exe 中,转换完成后,.exe 文件将位于您选择的文件夹中(默认情况下,它是“c:/users/name/output”),或者如果您有杀毒软件,它将被杀毒软件删除。每个杀毒软件都有不同的方法来恢复文件,所以如果您不知道,就试试吧。
以下是如何使用 auto-py-to-exe 的简单 GUI 来制作 .exe 文件。
解决方案 8:
PyOxidizer可以作为这里的一个选择。它在 Github 上非常受欢迎,有 3.3k 个星。它的文档说
PyOxidizer 能够生成单个文件可执行文件 - 其中包含 Python 副本及其所有依赖项的静态链接,以及嵌入在可执行文件中的所有资源(如 .pyc 文件)。您可以将单个可执行文件复制到另一台机器并运行其中包含的 Python 应用程序。它就是有效。
虽然我不确定它是否能够生成 .exe 文件,但 PyOxidizer 确实有助于包装和分发。
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 项目管理必备:盘点2024年13款好用的项目管理软件
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)