Как установить версию пакета Python3 через pip в Ubuntu?

433

Я и то python2.7и другое python3.2установлено Ubuntu 12.04.
Символическая ссылка pythonна ссылку python2.7.

Когда я печатаю:

sudo pip install package-name

По умолчанию будет установлена python2версия package-name.

Некоторые пакеты поддерживают оба python2и python3.
Как установить python3версию package-nameчерез pip?

кэв
источник
2
Существуют ли разделены pip-2.7и pip-3.2команды в вашей системе?
Феликс Ян
1
Могу ли я изменить первую строку /usr/bin/pipс #!/usr/bin/pythonна #!/usr/bin/python3?
к
4
Да, но я бы порекомендовал вам в то изменить его, так что вы получите лучший выбор в следующий раз :)cppippip-3.2
Феликс Ян
Если у вас проблемы с pip-2.7 и т. Д. Попробуйте запустить whereis pipиз командной строки. Кажется, они изменили имена на pip2.7 в Ubuntu 14.04.
tweirick

Ответы:

260

Вы можете построить virtualenv из python3, а затем установить пакеты python3 после активации virtualenv. Так что ваша система не будет испорчена :)

Это может быть что-то вроде:

virtualenv -p /usr/bin/python3 py3env
source py3env/bin/activate
pip install package-name
Феликс Ян
источник
4
Virtualenv устанавливает pip, даже если он не установлен в основном Python 3? Если так, то это решает его проблему. В противном случае нет.
Леннарт Регебро
3
Да, virtualenv устанавливает пипс.
Феликс Ян
63
ХОРОШО. Я все еще думаю, что ответ на самом деле не отвечает на его вопрос в общем виде.
Леннарт Регебро
8
Это работает для меня. Два дополнения: вы можете оставить virtualenvwith, deactivateи python3 может быть установлен в другом месте. Мой находится на /usr/local/bin/python3, который вы можете узнать сwhich python3
user2503795
2
После @LennartRegebro и @ user2503795 я могу подтвердить, что это немного более virtualenv -p `which python3` py3env
надежно
472

Ubuntu 12.10+ и Fedora 13+ имеют пакет под названием, python3-pipкоторый будет устанавливать pip-3.2(или pip-3.3, pip-3.4или pip3для более новых версий) без необходимости перепрыгивать через обручи.


Я натолкнулся на это и исправил это, не требуя подобных wgetили virtualenvs (предполагая Ubuntu 12.04):

  1. Установить пакет python3-setuptools: запустите sudo aptitude install python3-setuptools, это даст вам команду easy_install3.
  2. Установите pip с помощью Python 3 setuptools: запустите sudo easy_install3 pip, это даст вам команду, pip-3.2как решение kev.
  3. Установите ваши пакеты PyPI: запустите sudo pip-3.2 install <package>(конечно, для установки пакетов python в вашу базовую систему требуется root).
  4. ...
  5. Прибыль!
akaIDIOT
источник
23
Совершенно и правильно, это должен быть принятый ответ. Однако вы должны указать sudo pip-3.2 install <package>, что требуются права суперпользователя.
KomodoDave
53
Вы можете объединить шаги 1 и 2 и просто сделать:sudo apt-get install python3-pip
Shashank Bharadwaj
3
packages.ubuntu.com показывает этот супер удобный пакет для Ubuntu 12.10, но не для 12.04: packages.ubuntu.com/… (отличная находка;))
akaIDIOT
18
pip-3.3, pip-3.4 и т. д. больше не работают. Теперь это просто: pip, pip2, pip3. (По крайней мере, в Ubuntu 14.04)
6005
1
это решение также работает на Debian Wheezy и
Kali
209

Короткий ответ

sudo apt-get install python3-pip
sudo pip3 install MODULE_NAME

Источник: комментарий Шашанка Бхарадваджа

Длинный ответ

Краткий ответ относится только к более новым системам. В некоторых версиях Ubuntu команда выглядит так pip-3.2:

sudo pip-3.2 install MODULE_NAME

Если это не работает, этот метод должен работать для любого дистрибутива Linux и поддерживаемой версии :

sudo apt-get install curl
curl https://bootstrap.pypa.io/get-pip.py | sudo python3
sudo pip3 install MODULE_NAME

Если у вас нет curl, используйте wget. Если у вас нет sudo, переключитесь на root. Если pip3символическая ссылка не существует, проверьте что-то вроде pip-3.Икс

Для многих пакетов python требуется также пакет dev, поэтому установите его также:

sudo apt-get install python3-dev

Источники:
python устанавливает пакеты с помощью pip
Pip последней установки

Проверьте также ответ Тобу, если вы хотите еще более обновленную версию Python.

Я хочу добавить, что использование виртуальной среды обычно является предпочтительным способом разработки приложения на Python, поэтому ответ @felixyan, вероятно, лучший в идеальном мире. Но если вы действительно хотите установить этот пакет глобально или если вам необходимо часто тестировать / использовать его без активации виртуальной среды, я полагаю, что установка в качестве глобального пакета - это путь.

Марко Сулла
источник
1
Для curlменя вызов прерывается с синтаксической ошибкой в ​​строке 48.
icedwater
@icedwater: не может помочь, если вы не публикуете след (используйте pastebin).
Марко Сулла
Спасибо @MarcoSulla, но я просто перезапустил это и заметил UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here.: паста на ix.io/1fX5 для всех заинтересованных сторон :)
icedwater
syntax errorМожет произойти при использовании версии питона , который больше не поддерживается pip. Вышеуказанные команды работают с python3.5
user1251007
2
если pip уже установлен и он все еще не работает, я рекомендую sudo apt-get purge python3-pipсначала
Pynchia
49

Ну, на Ubuntu 13.10 / 14.04 все немного по-другому.

устанавливать

$ sudo apt-get install python3-pip

Установить пакеты

$ sudo pip3 install packagename

НЕ pip-3.3 install

laike9m
источник
2
Работает над Ubuntu 14.04
Adam Ryczkowski
3
Работает над Ubuntu 16.04
Шириш Кадам
1
Это будет работать на всех версиях Ubuntu, начиная с 12.04
Billal Begueradj
40

Самый простой способ установить последние pip2/ pip3и соответствующие пакеты:

curl https://bootstrap.pypa.io/get-pip.py | python2
pip2 install package-name    

curl https://bootstrap.pypa.io/get-pip.py | python3
pip3 install package-name

Примечание: пожалуйста, запустите эти команды какroot

кэв
источник
33

У меня была такая же проблема при попытке установить pylab, и я нашел эту ссылку

Итак, что я сделал для установки Pylab в Python 3:

python3 -m pip install SomePackage

Он работал правильно, и, как вы можете видеть по ссылке, вы можете сделать это для каждой имеющейся у вас версии Python, так что, думаю, это решит вашу проблему.

lmiguelvargasf
источник
Хотя в Fedora есть python3-pipпакет, он не создает команду pip3или, pip-3как это предлагается в других ответах. Этот ответ действительно работает.
Скиппи ле Гран Гуру
2
Это прекрасно работает, но предполагает, что pipоно уже установлено через:sudo apt-get install python3-pip
Габриэль
13

Старый вопрос, но ни один из ответов не удовлетворяет меня. Одна из моих систем работает под управлением Ubuntu 12.04 LTS, и по какой-то причине нет пакета python3-pipили python-pipдля Python 3. Итак, вот что я сделал (все команды были выполнены как root):

  • Установите setuptoolsдля Python3, если вы этого не сделали.

    apt-get install python3-setuptools

    или

    aptitude install python3-setuptools
  • С Python 2.4+ вы можете вызывать easy_installс определенной версией Python, используя python -m easy_install. Так что pipдля Python 3 можно установить:

    python3 -m easy_install pip
  • Вот и все, вы получили pipдля Python 3. Теперь просто вызовите pipс определенной версией Python для установки пакета для Python 3. Например, с установленным в моей системе Python 3.2, я использовал:

    pip-3.2 install [package]
Ха-Дуонг Нгуен
источник
9

Если ваша система имеет python2настройки по умолчанию, используйте команду ниже для установки пакетов вpython3

$ python3 -m pip install <package-name>

ketankk
источник
4

Достаточно просто:

sudo aptitude install python3-pip
pip-3.2 install --user pkg

Если вам нужен Python 3.3, который по умолчанию не установлен в Ubuntu 12.10:

sudo aptitude install python3-pip python3.3
python3.3 -m pip.runner install --user pkg
Tobu
источник
4

Вы можете в качестве альтернативы просто запустить pip3 install packagenameвместо pip,

Fahtima
источник
1
Ваш ответ дублирует многие ответы на этой странице. (Поиск "pip3" в тексте) Я не вижу никакой дополнительной ценности этого.
hynekcer
3

Во-первых, вам нужно установить pip для установки Python 3, которую вы хотите. Затем вы запускаете этот pip для установки пакетов для этой версии Python.

Поскольку у вас есть и pip, и python 3 в / usr / bin, я предполагаю, что они оба установлены с каким-то менеджером пакетов. Этот менеджер пакетов также должен иметь Python 3 пипса. Это тот, который вы должны установить.

Рекомендация Феликса о virtualenv хороша. Если вы только тестируете или занимаетесь разработкой, вам не следует устанавливать пакет в системном Python. В таких случаях лучше использовать virtualenv или даже создавать собственные Python для разработки.

Но если вы на самом деле действительно хотите установить этот пакет в системе питона, установка пипа для Python 3 является путем.

Леннарт Регебро
источник
3

Хотя вопрос касается Ubuntu, позвольте мне сказать, что я нахожусь на Mac, и моя pythonкоманда по умолчанию установлена ​​на Python 2.7.5. У меня также есть Python 3, доступный через python3, поэтому, зная о происхождении пакета pip, я просто скачал его и выпустил sudo python3 setup.py installпротив него, и, конечно же, только Python 3 теперь имеет этот модуль в своих пакетах сайта. Надеюсь, это поможет странствующему Мак-незнакомцу.

Nixter
источник
1

Выполните бинарный файл pip напрямую.

Сначала найдите нужную версию PIP.

jon-mint python3.3 # whereis ip
ip: /bin/ip /sbin/ip /usr/share/man/man8/ip.8.gz /usr/share/man/man7/ip.7.gz

Затем выполните.

jon-mint python3.3 # pip3.3 install pexpect
Downloading/unpacking pexpect
  Downloading pexpect-3.2.tar.gz (131kB): 131kB downloaded
  Running setup.py (path:/tmp/pip_build_root/pexpect/setup.py) egg_info for package pexpect

Installing collected packages: pexpect
  Running setup.py install for pexpect

Successfully installed pexpect
Cleaning up...
jonnymac
источник
0
  1. Вы должны установить ВСЕ зависимости:

    sudo apt-get install build-essential python3-dev python3-setuptools python3-numpy python3-scipy libatlas-dev libatlas3gf-base

  2. Установите pip3 (если вы установили, пожалуйста, смотрите шаг 3):

    sudo apt-get install python3-pip

  3. Iinstall scikit-learn by pip3

    pip3 install -U scikit-learn

  4. Откройте свой терминал и войдите в среду Python3, введите, import sklearnчтобы проверить это.

Удачи!

Cristinao
источник
0

Чтобы установить pip для Python3, используйте pip3 вместо pip. Для установки Python в Ubuntu 18.08 Bionic

sudo apt-get установить python3.7

Для установки необходимого pip-пакета в Ubuntu

sudo apt-get установить python3-pip

gunarevuri
источник
-1

Другой способ установить python3 - использовать wget. Ниже приведены шаги для установки.

wget http://www.python.org/ftp/python/3.3.5/Python-3.3.5.tar.xz
tar xJf ./Python-3.3.5.tar.xz
cd ./Python-3.3.5
./configure --prefix=/opt/python3.3
make && sudo make install

Кроме того, можно создать псевдоним для того же

echo 'alias py="/opt/python3.3/bin/python3.3"' >> ~/.bashrc

Теперь откройте новый терминал, введите py и нажмите Enter.

arpiagar
источник