При использовании Pycharm в проекте python3 я наткнулся на вариант в настройках «Интерпретатор проекта» для установки менеджера пакетов. Я рассеянно щелкнул по нему и сразу понял, что на меня напал ужас.
Я предполагаю, что я выбрал вариант установки PIP для python3, потому что со своего терминала я не мог правильно использовать PIP. В результате выполнения каких-либо действий с помощью команды pip получился следующий вывод:
$ pip install lxml
Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.6', 'console_scripts', 'pip')()
File "/usr/local/lib/python3.4/dist-packages/setuptools-5.7-py3.4.egg/pkg_resources.py", line 356, in load_entry_point
File "/usr/local/lib/python3.4/dist-packages/setuptools-5.7-py3.4.egg/pkg_resources.py", line 2472, in load_entry_point
try:
File "/usr/local/lib/python3.4/dist-packages/setuptools-5.7-py3.4.egg/pkg_resources.py", line 2186, in load
self.py_version = py_version
ImportError: No module named 'pip'
Я думал, что PIP отсутствует, поэтому я попытался удалить и повторно добавить пакет ubuntu python-pip
, я попытался запустить python get-pip.py
, но который сообщил, что PIP уже был установлен.
Через некоторое время я обнаружил, что PIP все еще установлен для python27, но не для python34. (Из моего понимания) Это то, что / следует / ожидать, чтобы предотвратить точные проблемы, с которыми я сейчас сталкиваюсь, однако, что бы Pycharm ни делал, похоже, изменило поведение по умолчанию в моем терминале для поиска PIP в python34, несмотря на то, что мой python по умолчанию все еще python27 (проверено выполнением python --version
).
Я переустановил PIP для python34, что дало мне возможность снова устанавливать пакеты, но я не хочу такого поведения.
Как мне все сбросить, чтобы я мог безопасно удалить PIP для python34 и вернуть PIP по умолчанию в версию python27?
(После того как я все почистил, Я начну работать с virtualenv
. Я только сделал его существование сегодня, пытаясь устранить эту проблему.)
После гугления для ответов с тех пор вчера, я не столкнулся ни с каким способом установить зернышко по умолчанию. Я решил пройти и удалить каждый экземпляр зернышка, которое я мог обнаружить.
sudo -H pip3 uninstall pip
sudo -H pip2 uninstall pip
sudo apt-get purge -y python-pip
# It should be noted, 'python-pip' is the ubuntu package for pip2, but
# there is also another ubuntu package for pip3. I didn't have it, but you may.
После этого я переустановил зернышко через sudo -H python get-pip.py
, и все, кажется, право снова. pip3
сбои, потому что это не установлено, pip2
, подтверждают, что корректное зернышко было установлено, и (лучший из всех) просто выполнение pip
работы точно так же, как это должно.
Учатся от меня. Используйте virtualenv
и virtualenvwrapper
.
При переключении интерпретатора Python от 2,7 до 3,4 на pycharm это установило setuptools-5.7, который, вероятно, повредил мое зернышко. Я зафиксировал это путем переименования setuptools файлов и установки python3 зернышка. Мое зернышко теперь работает снова.
cd /usr/local/lib/python3.4/dist-packages
sudo mv setuptools-5.7-py3.4.egg setuptools-5.7-py3.4.egg.moved
sudo mv setuptools-5.7-py3.4.egg setuptools-5.7-py3.4.egg.moved
sudo apt-get install python3-pip