Python虚拟环境降级pip至21版本失败报错求助
问题:降级pip至21版本后运行报错
尝试在Python虚拟环境中将pip降级至pip==21版本,但运行降级后的pip时反复出现以下错误:
Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "C:\Users\Jaros\pva_projekt\.venv\Scripts\pip.exe\__main__.py", line 4, in <module> from pip._internal.cli.main import main File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\cli\main.py", line 8, in <module> from pip._internal.cli.autocompletion import autocomplete File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\cli\autocompletion.py", line 9, in <module> from pip._internal.cli.main_parser import create_main_parser File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\cli\main_parser.py", line 7, in <module> from pip._internal.cli import cmdoptions File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\cli\cmdoptions.py", line 22, in <module> from pip._internal.cli.progress_bars import BAR_TYPES File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\cli\progress_bars.py", line 9, in <module> from pip._internal.utils.logging import get_indentation File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\utils\logging.py", line 14, in <module> from pip._internal.utils.misc import ensure_dir File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_internal\utils\misc.py", line 20, in <module> from pip._vendor import pkg_resources File "C:\Users\Jaros\pva_projekt\.venv\Lib\site-packages\pip\_vendor\pkg_resources\__init__.py", line 58, in <module> from pip._vendor.six.moves import urllib, map, filter ModuleNotFoundError: No module named 'pip._vendor.six.moves'
已尝试以下方法但均无效:
- 执行
python -m pip install pip==21,显示安装成功但运行pip仍报错; - 执行
python get-pip.py pip==21.0,无效; - 先执行
python -m ensurepip --upgrade再安装pip==21.0,无效; - 执行
python -m pip install --force-reinstall pip==21.0,无效; - 在虚拟环境外执行相同操作,仍出现相同报错。
解决方法
步骤1:彻底清理损坏的pip文件
如果python -m pip uninstall -y pip命令报错无法执行,手动删除以下路径中的pip相关文件:
- 虚拟环境下的
Lib\site-packages目录中,所有以pip-、pip_开头的文件夹和.dist-info文件; - 虚拟环境下的
Scripts目录中,pip.exe、pip3.exe等可执行文件。
步骤2:用ensurepip重建基础pip
执行以下命令,利用Python自带的ensurepip工具安装基础版本的pip:
python -m ensurepip --upgrade --default-pip
步骤3:重新降级至pip 21系列稳定版本
避免使用pip==21.0(该版本可能存在兼容性问题),选择21系列的稳定版本如pip==21.3.1执行降级:
python -m pip install --force-reinstall pip==21.3.1
验证
执行pip --version,若显示pip 21.3.1 from ...且无报错,说明操作成功。
内容的提问来源于stack exchange,提问作者Lukas Podhorny
相关产品推荐
相关产品推荐

