“如何将Python脚本转换为.exe文件?”每个python开发人员在想与外部共享他们开发的python应用程序时都会问这个问题。在此博客中,我们将详细介绍如何使用python模块(即pyinstaller)将python程序转换为可执行文件。
为什么不能共享.Py文件?
使用python开发时,我们会安装许多软件包并在程序中使用它们,这些已安装的软件包存在于我们的开发环境中。
当我们将python文件共享给另一台计算机时,要使该python程序在该计算机上运行,应提供相同的软件包。
安装所有软件包的一种简单方法是使用requirements.txt文件,该文件包含该python程序运行所需的所有已安装软件包的列表。
填写requirements.txt文件
此命令应在python开发人员的开发环境中执行。
填写requirements.txt文件
从requirements.txt文件安装软件包
该命令应在要安装python软件包的计算机上执行,以运行共享的.py文件。
从requirements.txt文件安装软件包
但是,如果开发人员不想共享requirenments.txt文件,而仍然希望在另一台计算机上运行该开发的应用程序,该怎么办?
当我们将python脚本文件(.py)转换为可执行文件(.exe)时,可以解决此问题。
获得的可执行文件可以在Windows平台上运行,并且包含运行python程序所需的所有软件包。
什么是Pyinstaller?
Pyinstaller是一个python软件包,它将Python应用程序及其所有模块/依赖项捆绑到一个软件包中。
这使用户更轻松地完成任务,因为用户可以在不安装Python解释器或计算机上任何模块的情况下运行捆绑的应用程序。
Pyinstaller还支持许多python库,例如NumPy、PyQt、Django、wxPython等。
使用pip安装Pyinstaller
为了将python文件转换为.exe文件,我们将使用python软件包,即pyinstaller。
使用pip安装Pyinstaller
这将在机器上安装pyinstaller,我们可以使用它将python程序转换为.exe文件。
将python转换为exe文件
命令行格式
打开终端,更改“.py”文件所在的目录,然后执行以下命令。
运行pyinstaller
让我们看看上面的命令执行什么:
yourprogram.spec与脚本写入同一目录。创建一个文件夹建立在同一个文件夹,如果它不存在的脚本。将日志文件和工作文件写入build文件夹。如果脚本不存在,则在与脚本相同的文件夹中创建文件夹dist。将yourprogram可执行文件文件夹写入dist文件夹。所述dist文件夹中包含的应用程序捆绑和一个可执行文件(.exe文件捆绑的应用程序文件夹中)的文件。
当您运行.exe文件时,您将获得与从python解释器运行时相同的输出。
这里的一个问题是,仍然不能单独共享.exe文件,因为要运行该.exe文件,需要有很多依赖文件。
Pyinstaller为我们提供了各种标志,可帮助我们修改捆绑的应用程序。
PyinstallerOneFile标志将Python文件转换为.exe
OneFile
该命令将在dist文件夹中创建一个没有任何依赖关系的可执行文件,因为由于–onefile标志,所有依赖文件都捆绑在.exe文件中。
如果您的python程序是GUI应用程序,则您会注意到首先打开了一个控制台窗口,几秒钟后GUI应用程序启动了,这对用户体验不利。
这个问题可以通过-w选项使用来解决。
onefile选项
设置.exe的Pyinstaller图标
默认情况下,Pyinstaller将为获得的可执行文件提供python外观,为了更改可执行文件的默认图标,您将必须设置-i/–icon标志。
该-i/-icon标志取路径.ICO图标图像文件。
设置.exe的Pyinstaller图标
此命令将使用您的自定义图标创建一个独立的可执行文件。