Ошибка Python - «ImportError: невозможно импортировать имя« dist »» - PullRequest
0 голосов
/ 06 мая 2018

Я на Ubuntu 16.04 и получаю:

Traceback (most recent call last):
  File "/home/omermazig/.virtualenvs/fixi/bin/pip", line 7, in <module>
    from pip import main
  File "/home/omermazig/.virtualenvs/fixi/lib/python3.6/site-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/home/omermazig/.virtualenvs/fixi/lib/python3.6/site-packages/pip/utils/__init__.py", line 23, in <module>
    from pip.locations import (
  File "/home/omermazig/.virtualenvs/fixi/lib/python3.6/site-packages/pip/locations.py", line 9, in <module>
    from distutils import sysconfig
  File "/home/omermazig/.virtualenvs/fixi/lib/python3.6/distutils/__init__.py", line 25, in <module>
    from distutils import dist, sysconfig
ImportError: cannot import name 'dist'

Когда я запускаю что-нибудь с python. Это специально для того, чтобы попытаться запустить "pip freeze". Что делать?

Ответы [ 3 ]

0 голосов
/ 12 мая 2018

попробуйте

sudo apt install python3-distutils
0 голосов
/ 18 июня 2019

Поскольку я сталкиваюсь с этой проблемой каждый раз, когда я обновляю свою версию Ubuntu каждые шесть месяцев, а затем натыкаюсь на точно такой же результат, вот мое решение.

Если другие решения, перечисленные здесь, не работают (установка python3-distutils), это может быть связано с разными версиями Python между системой и virtualenv.

Самое простое решение - уничтожить свой virtualenv, а затем воссоздать его с нуля.

0 голосов
/ 06 мая 2018

Возьмите добычу с этого (похожая проблема): https://github.com/pypa/pip/issues/5367

Возможное исправление:

  • Загрузить исходный код Python из https://www.python.org/
  • Распаковать исходный код
  • Установить следующие зависимости:

    sudo apt-get install zlib1g-dev (необходим для компиляции Python)

  • и установите:

sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev (необходим Pip для выполнения запросов SSL)

  • Скомпилируйте и установите Python:

/ * 1029 конфигурирования *

сделать

сделать установку

  • Должен быть установлен Python 3.6 с Pip.

Полный кредит Джонбесге.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...