Ubuntu 16: pip install устанавливает на python 3 вместо 2

Я обновился до Ubuntu 16.04. Я знаю, что он пришел только с установленным Python 3, но каким-то образом Python 2 попал туда (я думаю, как зависимость). Это нормально, потому что я все равно добавлю это. Обе версии Python присутствуют, как видно из:

$ python --version
Python 2.7.11+
$ python3 --version
Python 3.5.1+

Моя проблема в том, что pip и pip3 по умолчанию имеют значение python3 (и pip2 тоже нет). Например:

$ sudo -H pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/local/lib/python3.5/dist-packages
$ sudo -H pip3 install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/local/lib/python3.5/dist-packages

Для чего они имеют в виду разные фодлеры:

$ which pip
/usr/local/bin/pip
$ which pip3
/usr/local/bin/pip3

Как мне сделать установку pip на python2 и установку pip3 на python3, как в Ubuntu 14.04?

4
задан 2 June 2016 в 07:15

3 ответа

Я нашел путь, который работает, и надо надеяться я ничего не повредил в процессе. Сначала я попытался редактировать первую строку в/usr/local/bin/pip для изменения его от python 3 до компилятора python 2, но получил ошибку, что не было никакого модуля, названного зернышком!?

, Таким образом, я думал, возможно, что я должен установить его для python 2. Таким образом, я пошел туда и сохранил получить-pip.py сценарий, они предложили. Существует предупреждение, что это могло бы повредить материал для ОС, но начиная с гостеприимного использования только python3 я решил рискнуть им. И это работало:

$ sudo -H pip install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/local/lib/python2.7/dist-packages
$ sudo -H pip3 install numpy
Requirement already satisfied (use --upgrade to upgrade): numpy in /usr/local/lib/python3.5/dist-packages

существует все еще потенциальная проблема, что материал находится в/usr/local, который упомянул muru, но я не знаю много об этом и если материал будет продолжать работать, то я не буду жаловаться. Единственными путями я добавил, что пакеты склонны - добираются и некоторые .deb файлы в редких исключениях (как хром iirc).

0
ответ дан 2 June 2016 в 07:15

после установки оба

sudo apt-get install python-pip
sudo apt-get install python3-pip

в соответствии с Ubuntu 16.04 я могу просто использовать

pip2 install module
pip3 install module

для установки желаемого модуля для Python2 или Python3, соответственно.

я надеюсь, что это полезно и работает на Вас, также!

7
ответ дан 2 June 2016 в 07:15

Столкнитесь с той же проблемой, решенной путем удаления связи с зернышком с python3 путем переустановки его как следующего:

sudo python -m pip install -U --force-reinstall pip
1
ответ дан 1 December 2019 в 09:08

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

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