Python程序打包为EXE
Contents
1. 简介
在Python开发中,我们经常需要将Python程序打包成Windows可执行文件(.exe),以便分发给不具备Python环境的用户。本文将通过一个实际的案例,详细介绍如何使用PyInstaller将Python程序打包成exe文件。
2. 示例程序
我们以一个简单的GUI程序作为示例,这是一个基于tkinter的文本编辑器:
import tkinter as tk
from tkinter import ttk
class SimpleEditor(tk.Tk):
def __init__(self):
super().__init__()
self.title("test")
self.geometry("800x600")
# 创建文本编辑区
self.editor = tk.Text(self, wrap=tk.WORD)
self.editor.pack(expand=True, fill='both')
# 创建滚动条
scrollbar = ttk.Scrollbar(self.editor)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
# 配置滚动条
self.editor.config(yscrollcommand=scrollbar.set)
scrollbar.config(command=self.editor.yview)
if __name__ == "__main__":
app = SimpleEditor()
app.mainloop()
3. 打包准备工作
3.1 安装必要工具
首先需要安装PyInstaller:
pip install pyinstaller
3.2 准备资源文件
如果你的程序需要图标或其他资源文件,请确保它们放在正确的位置。例如:
– 程序图标:icon.ico
– 其他资源文件:放在resources文件夹
本质上都是提供路径
4. 打包步骤
4.1 基本打包命令
最简单的打包命令如下:
pyinstaller --name "test" --onefile --noconsole --icon=icon.ico main.py
提及的参数:
– --name:指定打包后的exe文件名
– --onefile:将所有依赖打包成一个单独的exe文件
– --noconsole:不显示控制台窗口
– --icon:指定程序图标
– main.py:要打包的Python脚本
未提及的参数:
– --hidden-import:指定需要隐藏导入的模块
– --exclude-module:指定需要排除的模块
– --add-data:添加额外的数据文件
– --upx-dir:指定UPX压缩工具的路径
4.2 spec
本人未做相关了解,待补充。
感兴趣的自己搜索网络或AI。