ImportError: не может импортировать имя 'основной' после установки python3.6 и pipenv

После установки python3.6 и pipenv я пытался установить requests с командой pip3 install requests и получая эту ошибку -

`Traceback (most recent call last):
  File "/usr/bin/pip3", line 9, in <module>
    from pip import main
ImportError: cannot import name 'main'`

Вот то, как я установил python3.6

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install libssl-dev openssl libreadline-dev

$ cd ~

$ wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz

$ tar zxf Python-3.6.1.tgz

$ cd Python-3.6.1

$ ./configure

$ make

$ sudo make install

И вот то, как я установил ENV зернышка - pip3 install pipenv

После этого я начал получать ту ошибку. Я попытался удалить Python, python3, зернышко Python, использование python3-зернышка ниже команд

$ sudo apt purge python

$ sudo apt purge python3

$ sudo apt purge python-pip

$ sudo apt purge python3-pip

Затем установленный их снова использующий ниже команд $ sudo apt install python

$ sudo apt install python3

$ sudo apt install python-pip

$ sudo apt install python3-pip

Но все еще получение той ошибки. Также я всегда использовал sudo apt-get update перед использованием тех команд. После установки python3 снова. Когда я проверяю версию с помощью команды python3 -V это показывает python 3.6 Как я могу решить эту проблему?

0
задан 25 May 2018 в 13:14

1 ответ

Во-первых, проверьте местоположение файла:

$ which pip
path -> /usr/bin/pip

Затем откройте терминал и войдите:

$ cd /usr/bin/    --> (path of pip)
$ sudo nano pip

В файле, Вы будете видеть:

import sys
from pip import main
if __name__ == '__main__':
     sys.exit(main())

необходимо измениться на:

import sys
from pip import __main__
if __name__ == '__main__':
     sys.exit(__main__._main())

Сохраняют изменения и выход

4
ответ дан 24 September 2019 в 01:49

Другие вопросы по тегам:

Похожие вопросы: