python 项目中 requirements.txt 使用

327 阅读2分钟

我们把自己写好的 Python 代码打包发给别人或者服务器环境运行时,需要先安装运行所需要的第三方库,一个个去 pip 安装比较麻烦。

这时候,就可以把项目所需要的第三方库导出为一个requirements.txt文件,放在项目文件夹里一起给到对方,对方可以一键安装所需要的库。

那么,怎样生成这个requirements.txt文件呢?

一 :使用第三方库 pipreqs

1、先安装pipreqs库

在终端中使用 pip 命令方法安装 :

pip install pipreqs

2、生成requirements.txt

在当前目录使用pipreqs命令:

pipreqs ./ --encoding=utf8  --force

--encoding=utf8 :为使用utf8编码
--force :强制执行,当 生成目录下的requirements.txt存在时覆盖
. / :在哪个文件生成requirements.txt 文件

至此,已经将项目需要的库导出到 requirements.txt 文件了,可以把 requirements.txt 文件与项目一起分享给对方。

对方只需要pip install -r requirements.txt 一条命令,就可以在他们的环境中安装相同的依赖包。

假如报编码问题错误,可以忽略执行.venv

解决方法:

pipreqs --ignore .venv --force

二 :pip freeze 方法

1、查看包

pip freeze 是一个 Python 命令,用于列出当前虚拟环境 (virtual environment) 中安装的所有 Python 包及其版本。这个命令在创建项目的依赖清单(requirements.txt)时非常有用,以便在其他环境中重新安装相同的依赖包。

使用 Pycharm 打开工程,在下方中打开Terminal终端,输入pip freeze ,可查看项目所安装的所有第三方库。

pip freeze

2、生成requirements.txt

在终端中输入pip freeze > requirements.txt,可在工程目录下生成requirements.txt文件,其中包含当前虚拟环境中安装的所有 Python 包及其版本。

pip freeze > requirements.txt

这个方法会将目前 pycharm 中已下载的所有包都导入到 requirements.txt 文件中,不推荐使用。

一键安装需要的库

pip install -r requirements.txt

使用 pip freeze 方法的优点是它简单易用,但它会包含虚拟环境中所有已安装的包,而不仅仅是项目所需的包。这可能会导致 requirements.txt 文件中包含不必要的依赖项。

相比之下,pipreqs 是一个更精确的方法,因为它会分析项目中的 Python 源代码文件,找出所有依赖的包,并将它们及其版本写入 requirements.txt 文件。这样,生成的 requirements.txt 文件只包含项目所需的依赖项,更加干净和易于管理。