将Python程序打包为exe
Posted Microtiger
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将Python程序打包为exe相关的知识,希望对你有一定的参考价值。
当Python项目编码完成之后,有时候我们需要让其在没有Python环境的电脑上运行,此时我们就需要将Python项目进行打包了。
本篇文章主要是基于Python的第三方库pyinstaller进行的。使用pyinstaller打包Python项目,相对于C和C#项目的打包要简单很多。
项目地址
pyinstaller git
pyinstaller安装
pip install pyinstaller
环境要求
python版本:2.7或3.4-3.7,当需要使用字节码加密时需要PyCrypto 2.4+
系统要求:Windows、Linux、macOS都支持,具体使用说明请看官网介绍。本次实践主要在win10上进行。
参数介绍
官网参数详细介绍,在使用pyinstaller打包Python项目的时候,需要指定一些参数,详细介绍请参加官网。也可以通过pyinstaller -h命令查看pyinstaller的参数使用介绍。
常用参数介绍:
- -D,–onedir:创建一个文件夹包含exe文件(默认)
- -F,–onefile:打包之后只会生成一个exe的文件
- -c,–console,–nowindowed:使用控制台窗口(默认)
- -w,–windowed,–noconsole:使用窗口显示
- -i:设置打包exe的图标,默认使用的是Python的图标
单个py文件打包
import cv2
img = cv2.imread("logo.jpg")
cv2.imshow("logo",img)
cv2.waitKey()
这个程序展示了使用OpenCV来读取图片然后显示,编辑完成之后进入到该目录下,运行pyinstaller -F exmple.py,看到如下信息表示打包成功:
在项目目录下发现多了dist和build两个目录和一个*.spec的文件。
打开dist目录,可以发现下面多了一个example.exe的可执行文件,双击运行发现并没有显示图片,此时我们需要将logo.jpg拷贝到当前目录下,然后再运行exe程序就可以看到如下结果
如果不想显示控制台打包的时候可以加上-w参数,pyinstaller -F -w example.py,此时打包生成的exe程序执行时不会出现控制台窗口。
修改exe的图标
默认使用的图标如下
ico下载网址:https://www.easyicon.net/
pyinstaller -F -w -i=panda.ico example.py
通过-i参数可以指定ico的图标,如果生成的exe的图标没有变化试着将ico图标文件拷贝到exe的相同目录下。
pyInstaller 一般安装在python安装路径/Script下面
pyinstaller -F xxx.py 打包exe命令,但是会有黑窗口
pyinstaller -F -w xxx.py去除黑窗口
以上是关于将Python程序打包为exe的主要内容,如果未能解决你的问题,请参考以下文章