После установки 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
Как я могу решить эту проблему?
Во-первых, проверьте местоположение файла:
$ 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())
Сохраняют изменения и выход