Python requirements.txt 的生成与使用

from: https://blog.zhjh.top/archives/kroa0R4GzhruzY-rI1XXw

简介

requirements.txt 为 Python 项目所需依赖项的列表文件。每行都是一个依赖项的名称和版本。

示例:

numpy==1.24.3
opencv-python==4.8.0.74
PyYAML==6.0

生成

可以使用 pip freeze 或 pipreqs(推荐)来生成requirements.txt

pip freeze

pip freeze > requirements.txt

pipreqs

pip freeze只会保存环境中pip install安装的依赖,有时候不想安装,只是想创建requirements.txt*,而且就算项目没有使用的依赖也会保存。

更推荐pipreqs,只保存项目中使用的依赖,不过如果你已经有了 Virtualenv 环境,且安装了正确的包,使用pip freeze更好。

# 安装
pip install pipreqs
# 生成
pipreqs . --force --encoding=utf8

参数项:

  • –force:覆盖生成目录已存在的requirements.txt。示例报错WARNING: requirements.txt already exists, use --force to overwrite it
  • –encoding=utf8:指定字符编码。示例报错UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 331: illegal multibyte sequence

使用

# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
cd venv/Scripts
activate
# 安装依赖
cd ../..
pip install -r requirements.txt

参考

  • pip freeze - pip documentation
  • pip install option -r - pip documentation
  • bndr/pipreqs: pipreqs - Generate pip requirements.txt file based on imports of any project. Looking for maintainers to move this project forward.

你可能感兴趣的:(python,pip,pipreqs)