py2exe和pyinstaller两种将py文件打包的工具和方式使用起来效率感觉差不太多,pyinstaller可以将所有文件打包成单个可执行的exe文件而略胜一筹,实测打包的文件大小也稍微小一点,并且可以自定义exe文件的图标。
1、先找到自己写好的Python文件路径
2、然后在该路径下添加一个设置脚本setup.py ,示例如下 :
from distutils.core import setup
import py2exe
setup(console=["guess.py"])
输入:
python setup.py py2exe
4、等待代码执行过后,在当前目录下的dist文件夹里面就有了guess.exe的可执行文件,需要把dist文件夹内所有文件都拷贝,才能在没有python环境上运行。build文件夹内文件是打包过程文件,可删除。
1、安装
根据版本情况使用pip或者pip3.11等,可以看PythonPython311Scripts文件夹里有什么。
pip install pyinstaller
PS:如果第一个地址不成功,用第二个清华大学这个地址速度飞快。如果pip不成功提示版本问题,可以换成pip3.11 install pyinstaller。
2、使用方法
(1)先找到自己写好的Python文件路径
(2)在此处打开命令窗口,执行命令,执行完毕会发现生成3个文件夹,dist 文件夹就有已经打包完成的exe文件
pyinstaller -F -w -i python.ico guess.py
详细参数:
参数 | 用法 |
-F | 生成结果是一个exe文件,所有第三方依赖、资源和代码均被打包进该exe内 |
-D | 生成结果是一个目录,各种第三方依赖、资源和exe同时存储在该目录(默认) |
-a | 不包含unicode支持 |
-d | 执行生成的 exe 时,会输出一些log,有助于查错 |
-w | 不显示命令行窗口。这在GUI界面时非常有用,如果是命令行程序的话那就把这个选项删除。 |
-c | 显示命令行窗口(默认) |
-p | 指定额外的import路径,类似于使用python path |
-i | 指定图标 |
-v | 显示版本号 |
-n | 生成的.exe的文件名 |
例如:pyinstaller -F -w -i favicon.ico guess.py表示:
-F,打包只生成一个 exe 文件
-w,在运行exe程序的时候不打打开命令行的窗口
-i 就是打包带有自己设置的 ico 图标。
Auto py to exe是一个将 pyinstaller 封装成为 GUI 窗口的工具,满足有的朋友经常使用这个功能又感觉命令行不直观的需求。
安装方法:
1、pip安装
pip install auto-py-to-exe
推荐第二个清华的地址,速度很快。
2、github下载也可以
安装完成之后,在命令行输入来启动:
auto-py-to-exe
在窗口中主要有几个参数:
Script Location:就是 python 文件路径
Onefile :就是上面的 -D 和 -F 参数,生成单个 exe 文件或者生成一个文件夹
Console Window :就是上面的 -w 和 -c 参数,表示在运行的时候是否出现命令行窗口
ICON:就是 ico 图标的地址
设置完这几个参数之后,在下面的 Current Command 框就会显示 pyinstaller 命令。点击convert py to exe按钮,生成 exe 文件。