pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗

一、首先需要安装Pyinstaller

安装步骤如下图所示:

pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗

pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
接下来这一步骤有一个需要注意的地方,要安装的是Pyinstaller,注意是大写,很多文章写得是小写,安装不正确后面就会出问题。
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗

二、打包

pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
如果你的启动文件不在工程目录下,需用cd 进入到你启动文件所在目录下,在命令行中输入pyi-makespec 你的启动文件名。如果按回车后命令行输出pyi-makespec不是内部或外部命令之类的问题,你需要考虑你安装的包是否正确。我是因为一开始安装的是pyinstall,这不是正确的包,后来安装正确的包后命令行不报错。
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
若不报错,则会在你的启动文件所在目录下产生一个和你的启动文件名相同的.spec文件。
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
这时打开这个spec文件进行编辑,需要修改两个地方。如下图红色方框选中的,其中Analysis中需要加上的是你整个项目运行过程中调用的.py文件(只能是.py文件),若其他py文件与启动文件在同一级目录,直接写文件名即可,在其他文件夹下需写完整路径。datas中则添加程序运行中需调用的其他非py文件,如图片等

pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
下图为根据我的工程目录添加后的结果
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
如果希望取消打开运行打包好的exe程序后的黑色命令窗口,还需在spec文件中修改一个地方,如图所示
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
spec文件修改好后,输入命令pyinstaller -D -w 你的.spec进行打包。如图所示。
pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
当出现下图的信息表明打包成功。pycharm下将项目中的多个.py文件打包成可执行exe且关闭小黑窗
这时会产生两个文件夹build和dist,打包好的exe程序就在dist中,在其中找到你的启动文件.exe文件,双击即可运行。

三、可能出现的问题

在我打包过程中,出现双击exe程序一闪而过,界面没有显示,这可能是由于你原先项目中存在问题或者你在py文件中引入了一些模块,但是py文件运行中没有调用这些模块,所以你在spec文件中没有引入该模块,程序就会报错。这时到原始代码中找到没有使用的模块,将其删除,再重新打包即可。
关于如何发现错误,首先需将spec文件的console设置成True,然后通过cmd窗口cd进入到exe文件所在目录,在命令行中输入你的exe文件名称,如果这个没有显示报错信息,则输入**.\你的exe文件名称**后按回车,这时就会出现报错信息,你可以根据报错信息进行文件修改。