Pipenv "ModuleNotFoundError: нет модуля с именем 'pip'" после обновления до python3 .7 - PullRequest
2 голосов
/ 12 марта 2020

Я использую Ubuntu 18. Версия python3 по умолчанию - 3.6. Сегодня я обновился до 3.7 и обновил альтернативы, указав python3 .7.

. Я могу использовать python3 .7, набрав python3. Я также могу использовать pip3 --version (20.0.2).

Я могу активировать виртуальную среду с помощью оболочки pipenv. Но я не могу установить пакет с помощью установки pipenv. Это дает мне следующую ошибку:

pipenv.exceptions.InstallError]: ['Traceback (most recent call last):', '  File "/home/johnchan/.local/share/virtualenvs/src-lkQYyAWf/bin/pip", line 5, in <module>', '    from p
ip._internal.cli.main import main', "ModuleNotFoundError: No module named 'pip'"]
ERROR: ERROR: Package installation failed...

Запуск какого pip3: /usr/local/bin/pip3 Запуск какого pipenv: /usr/local/bin/pipenv

Тип pip3 внутри pipenv дает:

Traceback (most recent call last):
  File "/home/johnchan/.local/share/virtualenvs/src-lkQYyAWf/bin/pip3", line 5, in <module>
    from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip'

Ответы [ 2 ]

0 голосов
/ 12 марта 2020

Я нашел ответ здесь: Настройка virtualenv: нет модуля с именем 'pip'

Похоже, это ошибка.

Я устанавливаю pipenv, используя - -re флаг, который эквивалентен virtualenv venv --no-setuptools.

Затем я запускаю python get-pip.py внутри pipenv.

Это работает. Я могу установить пакет прямо сейчас.

Но я не знаю, почему ...

0 голосов
/ 12 марта 2020
python2 -m pip install --user --upgrade pip

python3 -m pip install --user --upgrade pip

После обновления pip (или pip3, в данном случае), если происходит следующее:

$ ~ pip3 -V
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 7, in <module>
    from pip._internal import main
ModuleNotFoundError: No module named 'pip._internal'

Принудительная переустановка pip:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py --force-reinstall

Проверка установки:

$ ~ pip3 -V
pip 10.0.1 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)

Теперь pip3 install <package> и pip3 install --user <package> (для установок на уровне пользователя) будут работать правильно.

Никогда не должно быть причин для запуска pip в повышенном режиме.

(примечание: для Python 2.7 просто замените python на python3 и pip для pip3)

Также имелась проблема с macOS это общая проблема для разных платформ.

...