Python3 pip3 在 Ubuntu 上安装失败

Python3 pip3 在 Ubuntu 上安装失败

我在Ubuntu16.04上成功安装了python3和pip3,但是pip3 install出错了,该如何修复?错误信息pip3 install如下:

# pip3 install xlwt
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
  from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
  from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

输出sudo -H pip3 install --upgrade pip

sudo -H pip3 install --upgrade pip  
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
  from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
  from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

which pip3和的输出pip3 --version

# which pip3
/usr/bin/pip3

# pip3 --version
Traceback (most recent call last):
  File "/usr/bin/pip3", line 9, in <module>
    from pip import main
  File "/usr/lib/python3/dist-packages/pip/__init__.py", line 21, in <module>
    from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
ModuleNotFoundError: No module named 'pip._vendor.requests'

PS Python2 pip 运行成功。“which pip”和“pip --version”的输出:

# which pip
/usr/bin/pip

# pip --version
pip 1.5.4 from /usr/local/lib/python2.7/dist-packages/pip-1.5.4-py2.7.egg (python 2.7)

以及python和python3的安装信息:

# which python
/usr/bin/python
# which python3
/usr/bin/python3

# python -V
Python 2.7.14
# python3 -V
Python 3.6.3  

答案1

你的 pip3 有问题,所以删除它并重新安装。打开终端并输入:

sudo apt purge python3-pip  
sudo rm -rf '/usr/lib/python3/dist-packages/pip'  
sudo apt install python3-pip   
cd
cd .local/lib/python3/site-packages
sudo rm -rf pip*  
cd
cd .local/lib/python3.5/site-packages
sudo rm -rf pip*  
python3 -m pip install xlwt

答案2

安装 python3-pip 包会在文件 /usr/bin/pip3 中创建一个 python 脚本。要运行,需要从模块 pip ( from pip import main) 导入 main() 函数。此方法路径仅适用于打包的 pip 版本(在我的情况下为 9.0.1)。

运行后pip3 install --upgrade pip,pip版本变为18.1,并且main()已移入pip._internal

使用命令python3 -m pip --version查看你的案例是否对应同样的情况(pip3/usr/bin/pip3坏了也可以用这个方法)。

如果是这样,在文件 /usr/bin/pip3 中,将第 9 行:替换 from pip import main 为: from pip._internal import main

该问题将得到修复。(在 Ubuntu 18.04 发行版上测试)

答案3

以下是我发现的有用的信息:

  1. sudo rm -rf /usr/local/lib/python3.5/dist-packages
  2. 切勿pip3在内奔跑sudo

答案4

有同样的问题,安装 openssl 为我解决了这个问题

相关内容