python打包exe文件方法

在本文章中,我们将介绍如何将 Python 脚本打包成一个独立的 .exe 文件,让用户无需安装 Python 即可运行它。我们将用到名为 PyInstaller 的工具来实现打包操作。请跟随以下步骤了解整个流程。

### 为什么要打包成 EXE 文件?

将 Python 脚本打包成 EXE 文件有以下好处:

1. 用户无需安装 Python 即可运行程序。

2. 隐藏源代码,提高代码保密性。

3. 分发简单,只需提供一个 EXE 文件。

4. EXE 文件适用于 Windows 平台,可以减少跨平台兼容性问题。

### PyInstaller 简介

PyInstaller 是一个功能强大、易于使用的 Python 脚本打包工具。它将程序和所有相关的依赖和库文件打包成一个可执行文件,用户无需独立安装 Python 即可运行它。PyInstaller 支持 Python 2.7 和 3.6~3.9 版本。

### 打包步骤

#### 第 1 步:安装 PyInstaller

首先,用以下命令安装 PyInstaller:

```

pip install pyinstaller

```

#### 第 2 步:编写需要打包的 Python 脚本

以一个简单的 Python 脚本作为示例,创建一个新文件 `hello_world.py`,并输入以下代码:

```python

def main():

print("Hello World!")

if __name__ == "__main__":

main()

```

#### 第 3 步:使用 PyInstaller 打包

在脚本所在的文件夹内打开命令提示符(Windows)或终端(Linux/Mac),输入以下命令:

```

pyinstaller --onefile hello_world.py

```

“--onefile” 参数表示打包成单个 EXE 文件。

### 结果解释

PyInstaller 会在当前目录下创建三个文件夹:`build`、`dist` 和 `__pycache__`。

1. `build` 文件夹:这是 PyInstaller 使用的临时文件夹,存储打包过程中的中间文件。可以在打包完成后删除此文件夹。

2. `dist` 文件夹:这里存放生成的可执行文件(.exe 文件)。将此文件夹中的 EXE 文件发送给用户,即可让他们运行程序。

3. `__pycache__` 文件夹:这里存放了解释器生成的临时(.pyc)文件。可以在打包完成后删除此文件夹。

生成的 EXE 文件默认会采用脚本文件名,本例中为 `hello_world.exe`。

###注意事项

1. 打包后的 EXE 文件可能较大,因为它将 Python 解释器及依赖库整合进了可执行文件内。可以使用 UPX(http://upx.github.io/)对生成的 EXE 文件进行压缩。

2. 托管在 GitHub 上的开源项目 Auto PY to EXE(https://github.com/brentvollebregt/auto-py-to-exe)提供了图形化界面,简化了 PyInstaller 构建过程。

3. 如果打包过程中出现错误或问题,请检查脚本是否有导入外部库,或尝试使用 PyInstaller 官方文档中的高级选项调整打包设置。

总结:通过 PyInstaller,我们可以将 Python 脚本打包为独立的 EXE 文件,方便用户运行程序。此外,还可以通过其它工具(如 UPX)优化生成的可执行文件。