Pip 错误:找不到 python 的匹配分布

问题描述 投票:0回答:1

我正在整理一个Python项目以供公共分发。

它使用虚拟环境,并有一个包含所有依赖项的requirements.txt文件。

我希望这个环境包含对我构建它的特定Python版本的依赖。我似乎记得这是一个很好的做法。

所以我尝试使用 pip 安装 python,这似乎是显而易见的事情,尽管 pip 本身是使用标准 python 下载(版本 3.12.0)安装的

所以我尝试了两个可能的命令:

pip install python

pip install python==3.12.0

但是,pip 第一个会给出以下错误消息:

ERROR: Could not find a version that satisfies the requirement python (from versions: none)
ERROR: No matching distribution found for python

第二个类似的消息。

我还发现,如果我尝试在虚拟环境之外使用 pip,也会发生同样的情况(尽管这不是我打算做的事情 - 我这样做是为了确定问题的确切根源)。因此,这似乎是 pip 的问题,而不是虚拟环境的问题。

我环顾四周,但没有看到其他遇到同样问题的人提出任何疑问。

这表明这是一件愚蠢的事情,所以也许没有其他人尝试过。或者,这有点像“为什么外星人没有联系我们”的问题,因为每次他们这样做时,效果都很好,所以没有什么值得评论的(比如,也许外星人一直在联系我们,但是我们只是没有注意到,我并不反对这个理论)。

我找到了一种在虚拟环境中安装特定版本的Python的“标准”方法这里

但奇怪的是pip不能用来安装python。

问题是错误还是设计特点?我将其标记为错误,因为如果我的设置有问题,我想知道。

python pip virtualenv
1个回答
0
投票

requirements.txt
文件是包含所有所需的python包的文件,例如库,框架等。您不需要在那里指定python版本。


如果你想指定Python版本,你可以在

setup.py
pyproject.toml
中进行:https://packaging.python.org/en/latest/tutorials/packaging-projects/#configuring-metadata

参见那里的

requires-python
部分。


另外,我发现这个线程很有帮助:Enforcing python version in setup.py

在那里查看最喜欢的答案

© www.soinside.com 2019 - 2024. All rights reserved.