在日常生活中经常遇见需要把写好的python文件传到另外一台电脑上使用,但如果仅仅发送python文件的话,则需要对方电脑也配置好python环境。因此,可以选择将python打包成exe文件,这样就无需在另一台电脑上配置相应的环境了。
python提供了一个打包的库叫做Pyinstaller,理想情况下可以实现一键打包。然而在实际打包中会存在下列问题:
打包完的exe文件太大
依赖库太多,打包耗时长
打包完的exe文件打不开 (打开后控制台闪了一下就关闭了,程序无法运行)
在网上查阅相关资料后,可通过下述方式解决这三个问题:
文件太大:在虚拟环境(virtualenvs)下打包,可以使得打包过程更纯净,减少不必要的库和依赖
打包耗时长:采用-D,--onedir的方式打包,打包生成一个文件夹,之后根据打开exe时控制台报错来导入对应的库
exe文件打不开,控制台闪退:虚拟环境和项目的打包地址不要含有中文,在打包完后根据控制台报错导入缺失的所有库,即可打开exe
具体过程见下列步骤:
Step1:配置虚拟环境
利用pip安装virtualenvs:
pip install virtualenv
创建虚拟环境:
选择一个不含中文路径的地址来创建虚拟环境,比如这里我选择“D:\VirEnvs”,在该路径下右键点击“在此处打开命令窗口”,或者打开cmd cd到该路径下。