python - 只允许从 python3 上下文执行 requirements.txt
问题描述
从 requirements.txt 安装时,如下所示:
pip install -r requirements.txt
我只想限制在 Python3 的上下文中。如果从 Python2 上下文尝试,它应该会抛出一个错误。
我怎样才能完成上述工作?
解决方案
将您的项目转换为适当的包,并使用该python_requires
字符串。如果您想绝对确定(即确保旧版本pip
也不会在 Python 2 下运行),请在调用setup.py
之前包含类似这样的内容setup
from setuptools import setup
import sys
if sys.version_info < (3,):
raise RuntimeError('unsupported python version')
setup(...
自然地,在 中声明所有依赖项,setup.py
以便其他依赖于此的包可以获取它们,而不必依赖单独的文件。
如果您仍想使用requirements.txt
,请将其添加到以下内容:
-e .
这将触发您的软件包被安装,因此setup.py
应该被调用,然后将引发应该中止安装的异常。
推荐阅读
- r - 将每日数据系列重新排序为每周行,其中周一、周二、周三、周四和周五作为每周列
- python - 在 python 循环中从 csv 文件中跳过空白单元格
- c# - 具有 IDisposable 成员/属性的类
- ios - 以编程方式设置标题
- java - 区分一字、二字和三字命令
- python-3.x - 无法在 Python (pip) 中安装包
- javascript - 有什么方法可以使用 mustache 语法将参数传递给 Vue.JS 中的绑定变量
- python - 错误:EROFS:只读文件系统,在 Docker 上使用 Node-RED 在 Rpi 零上打开“/sys/class/gpio/export”
- python - 如何在 python 中删除带有 .log 扩展名的文件
- javascript - Firebase 简单查询给出错误:“在 JSON.stringify 将循环结构转换为 JSON”