目录

python项目依赖管理

背景

python包管理是一个非常抽象的问题,尤其是设计cuda登显卡环境的时候更加如此。

cu的问题我解决不了,但是普通工程的依赖问题需要解决一下。

方法

1. 使用pipreqs生成requirements.txt

pipreqs 是一个工具,可以根据你的项目代码自动生成 requirements.txt 文件。

安装pipreqs

1
pip install pipreqs

生成requirements.txt

在项目根目录下运行以下命令:

1
pipreqs . --force

这将扫描你的项目代码,并生成一个 requirements.txt 文件,列出所有直接使用的库。

2. 使用pip-tools整理依赖

为了确保依赖的版本一致性和可重复性,可以使用 pip-tools 来整理和锁定依赖。

安装pip-tools

1
pip install pip-tools

创建requirements.in

pipreqs 生成的 requirements.txt 文件重命名为 requirements.in

1
mv requirements.txt requirements.in

生成requirements.txt

使用 pip-compile 命令生成 requirements.txt 文件:

1
pip-compile requirements.in