将py文件打包成exe文件
1、安装pyinstaller库
pip install pyinstaller
2、PyInstaller生成可执行程序
PyInstaller 工具的命令语法如下:
pyinstaller 选项 Python 源文件
不管这个 Python 应用是单文件的应用,还是多文件的应用,只要在使用 pyinstaller 命令时编译作为程序入口的 Python 程序即可。
PyInstaller工具是跨平台的,它既可以在 Windows平台上使用,也可以在 Mac OS X 平台上运行。在不同的平台上使用 PyInstaller 工具的方法是一样的,它们支持的选项也是一样的。
下面先创建一个 app 目录,在该目录下创建一个 app.py 文件,文件中包含如下代码:
from say_hello import *
def main():
print('开始执行')
print(say_hello('xxxx'))
# 增加调用main()函数
if __name__ == '__main__':main()
接下来使用命令行工具进入到此 app 目录下,执行如下命令:
pyinstaller -F app.py
3、PyInstaller 支持的常用选项
-h,--help |
查看该模块的帮助信息 |
-F,-onefile |
产生单个的可执行文件 |
-D,--onedir |
产生一个目录(包含多个文件)作为可执行程序 |
-a,--ascii |
不包含 Unicode 字符集支持 |
-d,--debug |
产生 debug 版本的可执行文件 |
-w,--windowed,--noconsolc |
指定程序运行时不显示命令行窗口(仅对 Windows 有效) |
-c,--nowindowed,--console |
指定使用命令行窗口运行程序(仅对 Windows 有效) |
-o DIR,--out=DIR |
指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件 |
-p DIR,--path=DIR |
设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径 |
-n NAME,--name=NAME |
指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字 |
pyinstaller在打包文件时会将文件所依赖的其他文件都打包