使用 pip install 下载需求时出错(安装命令: use_2to3无效)

版本 pip 21.2.4 巨蟒3.6

命令:

pip install -r  requirements.txt

我的 requirements.txt的内容:

mongoengine==0.19.1
numpy==1.16.2
pylint
pandas==1.1.5
fawkes

此错误导致命令失败

ERROR: Command errored out with exit status 1:
command: /Users/*/Desktop/ml/*/venv/bin/python -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/kn/0y92g7x55qs7c42tln4gwhtm0000gp/T/pip-install-soh30mel/mongoengine_89e68f8427244f1bb3215b22f77a619c/setup.py'"'"'; __file__='"'"'/private/var/folders/kn/0y92g7x55qs7c42tln4gwhtm0000gp/T/pip-install-soh30mel/mongoengine_89e68f8427244f1bb3215b22f77a619c/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/kn/0y92g7x55qs7c42tln4gwhtm0000gp/T/pip-pip-egg-info-97994d6e
cwd: /private/var/folders/kn/0y92g7x55qs7c42tln4gwhtm0000gp/T/pip-install-soh30mel/mongoengine_89e68f8427244f1bb3215b22f77a619c/
Complete output (1 lines):
error in mongoengine setup command: use_2to3 is invalid.
----------------------------------------
WARNING: Discarding https://*/pypi/packages/mongoengine-0.19.1.tar.gz#md5=68e613009f6466239158821a102ac084 (from https://*/pypi/simple/mongoengine/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement mongoengine==0.19.1 (from versions: 0.15.0, 0.19.1)
ERROR: No matching distribution found for mongoengine==0.19.1
62957 次浏览

看起来 setuptools>=58突破了对 use_2to3的支持:

V58的 setuptools 变更日志

因此,您应该将 setuptools更新为 setuptools<58,或者避免在设置参数中使用带有 use_2to3的包。

我也有同样的问题 pip==19.3.1

将 MongoEngine 升级到 > = 0.20还可以修复这个问题,因为在0.20中删除了 Python 2支持(因此 use_2to3)

我安装了 setuptools==58It 为我工作。pip install setuptools==58.以前在我的设备上运行的来自 setuptools==69的错误。最后为这个错误保存了 setuptools 版本58。

“ pip install setuptools = = 58”对我很有用。当我将 ubuntu 升级到22.04及其 python 3.10时,setuptools 版本是59。我为一个现有的 django 项目启动了一个干净的虚拟环境。它只有两个包裹:

点评名单 软件包版本


22.0.2 Setuptools 59.6.0’

然后我将 setuptools 降级为58,即 pip install setuptools = = 58.0.0。在此之后,pip install-r requments.txt 就没有这样的错误了。

这招对我很管用。

pip install --upgrade pip setuptools==57.5.0

我正在研究 Windows11,但这些解决方案都不起作用。我改装了 派布鲁兹2。在 Windows 上的 python 版本 > = 3.9。

pip install pybluez2