一、安装pyinstaller
PS:可以考虑使用pip安装,即直接在cmd中敲上pip install pyinstaller,但是有时环境会在打包时提示不是可执行的命令,则可以使用下面手动安装
1.到官网http://www.pyinstaller.org/downloads.html下载pyinstaller的最新安装包
2.解压步骤1中下载好的压缩文件,cd 命令进入解压后的文件夹中,运行>>python setup.py install ,等待pyinstaller 安装完成了
3.虽然已经按照完成,但是还需要修改配置文件。运行cmd,输入echo %PATH%,找到Python的路径(如果你是直接安装python的话,请自行找到对应的路径,例如C:\Users\51582\Python\Python38-32)
4找到该路径下的Lib文件夹中的subprocess.py文件,将init()函数中的shell=Ture更改为shell=False。
二打包程序:
1.先编写好需要打包的脚本,我们编写一个测试脚本( 新建一个txt文件,内容为‘1234’):
file = open(‘new.txt’,’w’)
file.write(‘1234’)
file.close()
print(‘Done’)
2.cmd切换到需要打包脚本的目录,执行命令: pyinstaller -F test.py
注:为了保证程序可以正常运行,pyinstaller会自动打包脚本中需要的依赖包,因此脚本中依赖包比较多的话,需要耗时较长
这里介绍几个常用命令:
-D, –onedir 最终创建一个目录,包含exe文件和依赖文件,默认选项;
-F, –onefile 最终创建一个exe文件,所有依赖文件都打包进了exe文件中,虽然exe文件会比较大,但是更方便日常使用;
-c, –console, –nowindowed 有控制台,即点击exe后会弹出命令行窗口,默认选项;
-w, –windowed, –noconsole 无控制台,即点击exe后不会弹出命令行窗口;
-p,一般不需要,但是如果出现部分自己开发的代码引入的包,可以通过这个参数手动引入
3.执行命令后,会生产多个文件夹,而我们生成的exe程序就在dist文件夹里面
4.双击exe文件,运行成功后可以看到文件夹中多了一个新的txt文件
5.另外,如果需要自定义图标,可以加上-i参数,把需要自定义的图标放到与脚本同一文件夹下即可,如我想添加的图标为1.ico
则执行命令:
pyinstaller -F -w -i 1.ico test.py
ps:图标仅支持.ico,其他格式的图片请进行转换,可以通过网站:https://jinaconvert.com/cn/convert-to-ico.php
然后就生成了新的可执行文件了: