python项目生成依赖表 pipreqs 和 pip3 freeze 区别及使用

pip3 freeze 命令会列出当前Python环境中所有已安装的包及其版本号,包括全局环境和虚拟环境中的所有依赖。如果想要仅生成当前项目所使用的依赖列表,而非环境中所有包,可以使用 pipreqs 这个第三方工具,它能够智能分析项目源码并找出实际引用的包。

pip3 freeze 生成依赖文件方法:

pip3 freeze > ./requirement/requirements.txt


使用 pipreqs 的步骤如下:

  1. 首先确保您已经安装了 pipreqs,如果没有安装,请使用以下命令安装:

    pip3 install pipreqs
  2. 转至您的项目根目录下(即包含 __init__.py 或其他Python脚本及模块的目录)。

  3. 在项目目录运行 pipreqs 命令来生成 requirements.txt 文件:

    pipreqs ./ --force

    这里 ./ 表示当前目录,--force 参数表示即使存在已有的 requirements.txt 文件也要覆盖它。

这样,pipreqs 将会自动生成一个仅包含当前项目所依赖的Python包的 requirements.txt 文件。如果您确实需要在虚拟环境中操作,确保是在与该项目相关的虚拟环境中执行上述命令,以便获取准确的项目依赖。