pyinstaller库的介绍

本文介绍了如何使用PyInstaller工具将Python源代码(如F.py)打包成可执行文件。通过在命令行运行PyInstaller命令,可以生成包含所有依赖的dist目录。此外,可以使用参数-h获取帮助,-D查看详细生成过程,-I指定图标文件,-clean清理打包过程中的临时文件。最终生成的exe程序在dist目录下的子目录中,能正常运行并显示预期结果。

将.py源代码转换成无需源代码的可执行文件,将源代码转换成可执行代码。
pyinstaller -F .py文件
dist目录下双击exe文件
-h 查看帮助
–clean 清理打包过程中的临时文件(pycache和build文件)
-D. 执行上面命令,将看到详细的生成过程。当生成完成后,将会在 app 目录下看到多了一个 dist 目录,并在该目录下看到有一个 app 子目录,在该子目录下包含了大量 .dll 文件和 .pyz 文件,它们都是 app.exe 程序的支撑文件。在命令行窗口中运行该 app.exe 程序,同样可以看到与前一个 app.exe 程序相同的输出结果。
-I 选择打包程序所用的图标文件。

PyInstaller 是一个用于将 Python 程序打包成独立可执行文件的工具。它支持 Windows、Linux 和 macOS 平台,并且可以将 Python 脚本及其依赖项打包成一个单独的可执行文件,方便分发给没有安装 Python 的用户。 ### 核心特性: 1. **跨平台支持**:支持 Windows、Linux、macOS。 2. **单文件打包**:可以通过参数将整个程序打包为一个单独的可执行文件。 3. **自动依赖分析**:自动检测你的 Python 脚本依赖的并打包进去。 4. **支持虚拟环境**:可以使用虚拟环境来打包,避免打包不必要的依赖。 --- ### 使用步骤: #### 1. 安装 PyInstaller ```bash pip install pyinstaller ``` #### 2. 编写一个简单的 Python 脚本 `hello.py` ```python # hello.py print("Hello, PyInstaller!") input("Press Enter to exit...") ``` #### 3. 使用 PyInstaller 打包 ```bash pyinstaller --onefile hello.py ``` - `--onefile`:表示将所有内容打包成一个单独的可执行文件。 - 默认情况下,PyInstaller 会在当前目录下生成几个文件夹:`build`、`dist`,以及 `.spec` 文件。 - `dist/`:最终的可执行文件会生成在这里。 #### 4. 运行可执行文件 打包完成后,在 `dist/` 文件夹中找到 `hello.exe`(Windows)或 `hello`(Linux/macOS),双击运行即可。 --- ### 常用参数 | 参数 | 说明 | |------|------| | `--onefile` | 所有依赖打包成一个单独的可执行文件 | | `--windowed` 或 `-w` | 不显示命令行窗口(适用于 GUI 应用) | | `--icon=icon.ico` | 设置可执行文件的图标 | | `--name=your_name` | 自定义输出文件名 | #### 示例:带图标的 GUI 应用打包 ```bash pyinstaller --onefile --windowed --icon=app.ico --name=MyApp myapp.py ``` --- ### 注意事项 - 打包后的文件体积较大,因为包含了 Python 解释器和所有依赖。 - 如果使用了动态导入(如 `importlib`),可能需要手动指定隐藏的依赖。 - 在 Windows 上打包的 `.exe` 文件可能会被杀毒软件误判为病毒,可以使用 `--clean` 参数清理缓存或使用签名证书。 --- ### 示例:打包一个带 GUI 的 Tkinter 程序 ```python # gui_app.py import tkinter as tk def on_click(): label.config(text="Hello, PyInstaller!") root = tk.Tk() root.title("PyInstaller Demo") root.geometry("300x200") label = tk.Label(root, text="Click the button") label.pack(pady=20) button = tk.Button(root, text="Click me", command=on_click) button.pack() root.mainloop() ``` 打包命令: ```bash pyinstaller --onefile --windowed --name=GuiApp gui_app.py ``` --- ### 代码解释 - `--onefile`:将所有依赖和 Python 解释器打包成一个文件。 - `--windowed`:防止出现控制台窗口,适用于 GUI 应用。 - `--name=GuiApp`:设置输出文件名为 `GuiApp`。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值