温馨提示  2024年 6月我们已经停止开发者板块文章内容更新,谢谢来访。存档数据
知识 2023-11-28 36 次阅读

如何在conda中打包带第三方库的exe文件?有哪些疑问点需要关注?

在conda中打包exe并携带第三方库是一种常常出现在大家视野里的操作方式,它可以方便地将你的Python代码打包成可执行文件,并在没有Python环境的计算机上运行。以下是一篇关于如何使用conda打包exe并携带第三方库的短文:
"使用conda打包exe并携带第三方库:
首先,确保你已经安装了Anaconda或Miniconda,并且已经将你的项目代码和所需的第三方库安装到适当的环境中。
下一步,打开终端或命令提示符,并导航到你的项目目录。
使用conda命令创建一个新的环境,并将你的代码和第三方库安装到该环境中。比如,使用以下命令创建一个名为myenv的环境,并将代码和所需的库安装到该环境中:
```shell conda create -n myenv python=3.8 conda activate myenv pip install -r requirements.txt ``` 在这里,requirements.txt文件包含了你的代码所需的第三方库列表。
最后,使用以下命令将你的代码打包成可执行文件,并将第三方库一并打包:
```shell python setup.py bdist_exe --packages-to-include=your_third_party_package ``` 在这里,setup.py是你的项目主脚本,your_third_party_package是你想要打包的第三方库。
完成上述步骤后,你将在dist目录下生成一个包含你的代码和第三方库的可执行文件。只需将此文件复制到目标计算机上,无需安装Python环境即可运行你的代码。"

当我们通过一个Python项目来开发应用程序时,需如果要把代码及其依赖的库打包成一个独立的可执行文件(.exe),以便在没有Python环境的操作系统上运行。在本文中,我们将介绍如何使用Conda打包一个Python项目(包括第三方库)到一个exe文件。

### 前提条件

- 已安装Anaconda或MinicondaAnaconda是一个全方位的Python及数据科学领域相关功能集合,而Miniconda则更轻量级,提供了最基本的Python环境。

- 已安装自己的Python项目的依赖库。可通过`requirements.txt`文件或`environment.yml`文件安装。

### 打包Python项目为exe文件步骤

1. 创建一个新的conda环境

为了确保项目环境的独立和干净,我们需要创建一个新的conda环境。打开命令行或终端,执行以下命令

```

conda create -n my,project python=3.x

```

其中`my,project`表示环境名,根据实际情况更改。`python=3.x`表示使用的Python版本,选择与你的项目兼容的版本。

2. 激活新创建的conda环境

```

conda activate my,project

```

3. 安装项目依赖

进入项目目录,在其中找到`requirements.txt`或`environment.yml`文件,根据文件类型使用不同的方法安装依赖库

- 如果是`requirements.txt`

```

pip install -r requirements.txt

```

- 如果是`environment.yml`

```

conda env update --file environment.yml

```

4. 安装Nuitka

打包Python项目为exe文件,我们需要引入Nuitka。这是一个将Python代码编译成C代码并通过C编译器将程序编译为单独的可执行文件的工具。安装方法如下

```

pip install nuitka

```

5. 利用Nuitka将项目打包成exe文件

进入项目的主目录,找到主程序入口的Python文件(例如`main.py`),然后执行

```

nuitka --standalone --follow-imports main.py

```

这将会在本地生成一个名为`main.dist`的文件夹,里面包含了打包好的exe文件及相关依赖(例如DLLs)。

6. 测试生成的exe文件

在`main.dist`文件夹中,双击`main.exe`,查看程序是否正常运行。如果遇到问题,检查程序有没有未列在`requirements.txt`或`environment.yml`中的依赖库。

7. 分享你的exe文件

你可以将`main.dist`目录下所有文件一起打包成zip文件,把它分享给需要的人。注意,这里的打包跟之前步骤中解释的打包意义不同,实际意义上就是把它压缩为一个便于传输和解压的压缩包。

### 结论

本文介绍了如何使用conda打包一个包含第三方库的Python项目为一个独立的exe文件,让你的程序能够在没有Python环境的计算机上运行。只需遵循上述操作,你可以顺利将自己的Python项目分享给他人。