首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >降低requirements.txt

降低requirements.txt
EN

Stack Overflow用户
提问于 2020-08-30 08:06:43
回答 1查看 3.7K关注 0票数 1

有没有办法减少我的requirements.txt --我一年前改用了Python,那时我还不完全理解事情是如何工作的。因此,当我需要创建requirements.txt时,我只是做了一个pip冻结,并且复制通过了所有的要求。今天,我知道,我不需要他们,只是高层,进口其他需求,有办法实现吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-30 08:29:17

有几个选择。

pip-工具

如果您在项目中使用pip,您可以欣赏pip-工具。首先将您的需求手动放入requirements.in中,然后使用pip-compile可以生成包含所有依赖项的最终requirements.txt。假设您的项目的依赖项是Django和Ansible。你把它们放到requirements.in里,就像这样:

代码语言:javascript
复制
# requirements.in
django
ansible

然后运行pip-compile获得整个依赖关系图:

$ pip-compile requirements.in

代码语言:javascript
复制
#
# This file is autogenerated by pip-compile
# To update, run:
#
#    pip-compile requirements.in
#
ansible==2.9.12           # via -r requirements.in
cffi==1.14.2              # via cryptography
cryptography==3.1         # via ansible
django==1.11.29           # via -r requirements.in
jinja2==2.11.2            # via ansible
markupsafe==1.1.1         # via jinja2
pycparser==2.20           # via cffi
pytz==2020.1              # via django
pyyaml==5.3.1             # via ansible
six==1.15.0               # via cryptography

诗词

如果您正在使用诗词,那么您可以继续通过poetry add添加依赖项,并在需要时最终导出它们。否则,您可以跳过导出步骤,因为诗歌可以生成通过poetry build分发给您的包。

$ poetry add django

代码语言:javascript
复制
Using version ^3.1 for django

Updating dependencies
Resolving dependencies... (1.4s)

Writing lock file


Package operations: 3 installs, 0 updates, 0 removals

  - Installing asgiref (3.2.10)
  - Installing sqlparse (0.3.1)
  - Installing django (3.1)

您可以在pyproject.toml中找到所有依赖项。如果您需要将它导出到requirements.txt

$ poetry export -f requirements.txt -o requirements.txt --without-hashes

我使用的是--without-hashes,因为AppEngine有问题

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63655310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档