python打包

本人通过pyinstaller库进行打包操作,python 打包可以打单exe文件或者项目包文件,
打包命令:
pyinstaller -D 文件名.py
pyinstaller -F 文件名.py

0.安装pyinstaller库

在命令窗口安装pyinstaller包,
打开Windows电脑的cmd或者windows powerShell,输入:

pip3 install pyinstaller
 #或
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller
image.png

1.打包

找到要打包的.py文件夹下,输入命令:

#方法1,打包为单个exe文件,一般内部包含了依赖库,所以较大
pyinstaller -F -w 文件名.py    
#方法2,打包为一个文件夹,其中exe文件在文件夹内部,这样子单个exe文件就比较小
pyinstaller -D -w  文件名.py   
命令 作用
–icon= 图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-p 指定exe依赖的包、模块
-d 编译为debug模式,获取运行中的日志信息
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
-clean 清理编译时临时文件
-distpath 指定生成的exe存放目录
-workpath 指定变异种临时文件存放的目录
-version-file 添加exe版本信息
pyinstaller -h 来查看参数

打包的文件在同级目录如下:


image.png

文件3中可修改打包项配置,文件2内为打包程序文件。

2.报错

启动项目文件下的exe文件,如有闪退可在cmd中启动,查看报错原因:

image.png

提示py文件所在库未找到
ModuleNotFoundError: No module named 'XXX'
(由于本人使用idea写的python代码,把本地的_init_.py删除过,报错原因是python2 未把此项目当成python包编译,是会找不到包, 因为 _init_.py 文件是python认为这文件夹是包的标志)
手动添加_init_.py文件后打包,项目正常启动。

你可能感兴趣的:(python打包)