前言
pyinstaller可以将.py文件打包成.exe可执行文件,即使别人的电脑上没有搭建Python环境,也是可以直接运行程序的。
pyinstaller安装
首先打开cmd,在里面输入下面这一行命令,回车即可。
pip install pyinstaller
我运行命令时有一个错误,很明显这是因为访问超时了,可以尝试重试,或者使用国内的镜像地址下载。
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/pyinstaller/
当你看到左下角的Succesfully就是成功安装了。
程序打包
例如我的代码存放在 D:\Py_Code\ProcessControl 路径下,并且文件名为人机对战小游戏,那我的打包命令可以为:
pyinstaller -F "D:\Py_Code\ProcessControl\人机对战小游戏.py"
其中 -F 是打包的模式,模式可以选择多个,只需用空格隔开就好了。
模式含义
-F 指定打包后只生成一个exe格式的文件
-D 创建一个目录,包含exe文件,但会依赖很多文件
--noconsole 使用窗口,去掉控制台
-i 加入icon格式的图标
更多模式和详细的解释,都可以在命令行中得到,只需要输入如下命令:
pyinstaller --help
就会得到这个
打包后可以在信息中看到exe文件的路径,我们去打开。
运行结果:
可以看到程序成功运行了,并且大傻春的运气也特别好。
程序运行完一闪而过
有时候程序最后还打印了信息,可是运行时却一闪而过看不到怎么办?其实很简单,只需要使用一个输入语句,就可以阻塞程序,例如:
input('Press Enter to exit...')