【问题标题】:python3 pip broken. missing distutilspython3点坏了。缺少 distutils
【发布时间】:2018-08-12 00:08:16
【问题描述】:

我一直试图在 WSL ubuntu 16.04 上使用 python3 获取 pip,但没有成功。我一直在运行 sudo apt install --reinstall python3-pip,但仍然无法让 pip 正常工作。

$ pip3
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 14, in 
<module>
from pip.utils import get_installed_distributions, get_prog
  File "/usr/lib/python3/dist-packages/pip/utils/__init__.py", line 23, in 
<module>
    from pip.locations import (
  File "/usr/lib/python3/dist-packages/pip/locations.py", line 9, in 
<module>
from distutils import sysconfig
ImportError: No module named 'distutils'

sudo类似

$ sudo pip3
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 14, in 
    <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/usr/lib/python3/dist-packages/pip/utils/__init__.py", line 23, in 
<module>
    from pip.locations import (
  File "/usr/lib/python3/dist-packages/pip/locations.py", line 9, in <module>
    from distutils import sysconfig
ImportError: No module named 'distutils'

我还注意到我似乎安装了两个版本的 python3:

$ ls /usr/lib | grep python
python2.7
python3
python3.5

【问题讨论】:

  • 您始终可以使用python3 -m pippython3.5 -m pip,其中-m 表示“使用模块”。当你安装了多个 Python 版本时,这很棒,事实上,我不再使用裸的 pippip3 命令了。它使您可以指定所需的确切解释器。如果该解释器没有distuils,您可能会遇到更多麻烦,但通常这可以解决问题。
  • 你可以试试sudo apt-get install python-distutils
  • 是同一个版本的python3检查python3 --version和python3.5 --version

标签: python python-3.x pip windows-subsystem-for-linux


【解决方案1】:

所以在经历了很多痛苦之后,我终于屈服了。我让事情变得更糟,并破坏了我的整个 python3 安装。我损坏了太多文件,试图修复所有问题。我最终卸载了 WSL/ubuntu 并重新安装干净。我先备份了一些东西。

不幸的是,如果你真的像我一样搞砸了,这似乎是最好的选择。现在要更加小心,python3 使用 pip 工作得很好。安装时请确保遵循官方文档。

【讨论】:

    【解决方案2】:

    根据 Python 3 文档,distutils 显然没有被弃用,但是,我安装的 2.7 有 disutils,但 3.6 没有。 当我读到: https://docs.python.org/3/installing/ 似乎说 distutils 被弃用了,但如果他们在谈论 distutils 或其他东西,则措辞不明确。

    如果有人知道确切的答案,请告诉我们。

    【讨论】:

      猜你喜欢
      • 2022-07-13
      • 1970-01-01
      • 1970-01-01
      • 2019-02-10
      • 2013-09-16
      • 1970-01-01
      • 2019-12-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多