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

391

У меня есть как 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
    Есть только один pip .
Показать ещё 5 комментариев
Теги:
python-3.x
pip
ubuntu-12.04

17 ответов

228
Лучший ответ

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

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

virtualenv -p /usr/bin/python3 py3env
source py3env/bin/activate
pip install package-name
  • 3
    Virtualenv устанавливает pip, даже если он не установлен в основном Python 3? Если так, то это решит его проблему. В противном случае нет.
  • 2
    Да, virtualenv устанавливает пипс.
Показать ещё 9 комментариев
458

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


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

  • Установить пакет python3-setuptools: запустить sudo aptitude install python3-setuptools, это даст вам команду easy_install3.
  • Установить pip с помощью Python 3 setuptools: запустить sudo easy_install3 pip, это даст вам команду pip-3.2 как решение kev.
  • Установите пакеты PyPI: запустите sudo pip-3.2 install <package> (установка пакетов python в вашу базовую систему требует, конечно, root).
  • ...
  • Profit!
  • 23
    Совершенно и правильно, это должен быть принятый ответ. Однако вы должны указать sudo pip-3.2 install <package> , требуются права суперпользователя.
  • 0
    Хорошо заметили, изменили пункт 3, чтобы отразить это.
Показать ещё 14 комментариев
199

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

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
Пип последняя установка

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

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

  • 1
    Вызов curl работает для меня с синтаксической ошибкой в строке 48.
  • 0
    @icedwater: не может помочь, если вы не публикуете след (используйте pastebin).
Показать ещё 5 комментариев
50

Ну, на ubuntu 13.10/14.04, все немного отличается.

Установка

$ sudo apt-get install python3-pip

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

$ sudo pip3 install packagename

НЕ pip-3.3 install

  • 2
    Работает на Ubuntu 14.04
  • 3
    Работает на Ubuntu 16.04
Показать ещё 1 комментарий
36

Самый простой способ установить последние 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

29

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

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

python3 -m pip install SomePackage

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

  • 0
    Хотя в 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

Если у вас есть пипс, установленный на обоих питонах, и оба находятся на вашем пути, просто используйте:

$ pip-2.7 install PACKAGENAME
$ pip-3.2 install PACKAGENAME

Литература:

Это дубликат вопроса # 2812520

4

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

  • 0
    Ваш ответ является дубликатом многих ответов на этой странице. (Поиск "pip3" в тексте) Я не вижу никакой дополнительной ценности этого.
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
3

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

3

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

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

Рекомендация Felix для virtualenv - хорошая. Если вы только тестируете или выполняете разработку, то вы не должны устанавливать пакет в системный python. Использование virtualenv или даже создание собственных Pythons для разработки в этих случаях лучше.

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

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...
0

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

$ python3 -m pip install <package-name>

  • 0
    Это сработало для меня. Благодарю.
0
  • Вы должны установить ВСЕ зависимости:

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

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

    sudo apt-get install python3-pip

  • Iinstall scikit-learn by pip3

    pip3 install -U scikit-learn

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

Удачи!

0

Другой способ установки 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.

-1

Если вы только что установили Python 3.3 и теперь хотите установить pip 3.3 локально:

wget http://python-distribute.org/distribute_setup.py
python3.3 -m distribute_setup install --user
easy_install-3.3 --user pip

Это работает в Ubuntu 12.04. Не забудьте добавить $HOME/.local/bin к вашему пути.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню