pip 的依赖解析器目前没有考虑所有安装的包

pip 的依赖解析器目前没有考虑所有安装的包

pip’s dependency resolver does not currently take into account all the packages that are installed

要解决“错误:pip 的依赖项解析器当前未考虑所有已安装的包”:

  1. 安装和升级wheelsetuptools以及pip
  2. (可选)创建一个虚拟环境并在其中安装包。
  3. 确保包支持您的 Python 版本。

error pips dependency resolved 当前不接受

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.

安装wheel

您应该尝试的第一件事是
安装 wheel

运行以下命令进行安装wheel

pip install wheel pip3 install wheel python -m pip install wheel python3 -m pip install wheel # 👇️ for Windows py -m pip install wheel

升级你的版本pip

您还应该升级您的 pip 版本

pip以下是在所有操作系统上升级的命令。

哪个命令有效取决于您的操作系统和 Python 版本。

# 👇️ if you have pip already installed pip install --upgrade pip # 👇️ if your pip is aliased as pip3 (Python 3) pip3 install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python -m pip install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python3 -m pip install --upgrade pip # 👇️ if you have easy_install easy_install --upgrade pip # 👇️ if you get a permissions error sudo easy_install --upgrade pip # 👇️ if you get a permissions error when upgrading pip pip install --upgrade pip --user # 👇️ upgrade pip scoped to the current user (if you get permissions error) python -m pip install --user --upgrade pip python3 -m pip install --user --upgrade pip # 👇️ Installing directly from get-pip.py (MacOS and Linux) curl https://bootstrap.pypa.io/get-pip.py | python # 👇️ if you get permissions issues curl https://bootstrap.pypa.io/get-pip.py | sudo python # 👇️ alternative for Ubuntu/Debian sudo apt-get update && apt-get upgrade python-pip # 👇️ alternative for Red Hat / CentOS / Fedora sudo yum install epel-release sudo yum install python-pip sudo yum update python-pip

升级 pip 后,
还要
升级 setuptools 。

pip install --upgrade setuptools pip3 install --upgrade setuptools python -m pip install --upgrade setuptools python3 -m pip install --upgrade setuptools py -m pip install --upgrade setuptools

安装h5pytyping-extensions模块

如果错误未解决,请尝试在安装 wheel 之前安装
h5py
typing-extensions

pip install h5py pip install typing-extensions pip install wheel pip3 install h5py pip3 install typing-extensions pip3 install wheel

如果错误仍然存​​在,请使用pip show package_name命令检查软件包是否实际安装。

pip show requests pip3 show requests python -m pip show requests python3 -m pip show requests

pip show package_name命令将声明该包未安装或显示有关该包的一堆信息。

即使错误显示在您的终端中,该软件包也可能已安装。

错误信息可能包含依赖冲突

您的错误消息可能包含一个或多个依赖项冲突,例如
“seaborn 0.12.1 需要 matplotlib!=3.6.1,>=3.1,但您有不兼容的 matplotlib 3.6.1”

如果是这种情况,您可以尝试在安装 matplotlib之前
卸载
seaborn包。

# 👇️ uninstall package that caused conflict pip uninstall seaborn pip3 uninstall seaborn python -m pip uninstall seaborn python3 -m pip uninstall seaborn # 👇️ install both packages pip install matplotlib seaborn pip3 install matplotlib seaborn python -m pip install matplotlib seaborn python3 -m pip install matplotlib seaborn

确保将包替换为错误消息中的包。

另一种方法是尝试在安装之前升级seaborn
pip install seaborn --upgradematplotlib

您还可以安装错误消息指定范围内的冲突包版本。

您可以通过用两个等号分隔包的名称和版本来安装包的特定版本。

pip install requests==2.28.0 pip3 install requests==2.28.0

创建虚拟环境

如果错误依旧,请创建一个虚拟环境或卸载软件包并重新安装。

  1. 创建一个虚拟环境。
  2. 激活虚拟环境。
  3. pip install在虚拟环境处于活动状态的情况下运行命令。
# 👇️ use correct version of Python when creating VENV python3 -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ upgrade pip pip install --upgrade pip # 👇️ install the specific package in the virtual environment pip install requests
确保根据您的操作系统和 shell 使用正确的命令来激活您的虚拟环境。

您的虚拟环境将使用用于创建它的 Python 版本。

如果这没有帮助,请尝试卸载并安装该软件包。

# 👇️ uninstall package pip uninstall requests pip3 uninstall requests python3 -m pip uninstall requests # 👇️ install package pip install requests pip3 install requests python3 -m pip install requests

该错误通常是由于依赖项的版本不兼容引起的,因此创建一个隔离的虚拟环境并安装包应该足以解决它。

如果仍然出现错误,请尝试在代码中导入包。即使在运行时显示错误消息,也很可能模块安装成功pip install

检查包是否支持你的 Python 版本

谷歌包的名称并检查包是否支持您的 Python 版本。

例如,如果我用谷歌搜索“requests pypi”并点击
pypi.org页面,我可以在左侧边栏的Meta>下看到支持的 Python 版本Requires

包支持的python版本

截图显示该包支持 Python 3.7+。

如果你的Python版本不符合要求,会出现“pip的依赖解析器当前没有考虑到所有已安装的包”的错误。

如果包不支持最新版本的 Python,请尝试运行
pip install--pre选项的命令。

pip install requests --pre pip3 install requests --pre python -m pip install requests --pre python3 -m pip install requests --pre py -m pip install requests --pre
确保替换requests为您尝试安装的实际包的名称。

--pre选项使其包含pip包的预发布和开发版本。默认情况下pip只查找稳定版本。

如果这不起作用,则必须安装指定范围内的 Python 版本,然后运行命令pip install <package_name>

您可以通过从
官方 python.org 网站下载安装程序并运行它来升级您的 Python 版本。

如果出现提示,请确保勾选以下选项:

  • 为所有用户安装启动器(推荐)
  • 将 Python 添加到 PATH(这会将 Python 添加到您的 PATH 环境变量)

如果包不支持最新的 Python 版本,您可以下载包支持的特定 Python 版本。

“寻找特定版本”表中提供了不同的版本

安装特定的python版本

结论

要解决“错误:pip 的依赖项解析器当前未考虑所有已安装的包”:

  1. 安装和升级wheelsetuptools以及pip
  2. (可选)创建一个虚拟环境并在其中安装包。
  3. 确保包支持您的 Python 版本。