Как установить pip для Python 3 в Ubuntu 12.04 LTS


117

Я пытаюсь установить модуль Pillow для python 3.3, но для этого мне нужно установить pip. Каждый раз, когда я устанавливаю pip, он устанавливает для python 2.7, какая-нибудь помощь?


1
это должно быть легко sudo apt-get install python3-pip, однако я понимаю, что не могу найти его. У вас тоже была эта проблема? Вы это исправили?
Чарли Паркер

Ответы:


141

Обновление 2018 года: это все еще привлекает голоса, которые меня беспокоят.

12.04 не поддерживается уже около года. Лучший способ установить pip3 - обновить его до более новой поддерживаемой версии Ubuntu. У вас есть 3 версии LTS на выбор.


В то время как в более современных версиях Ubuntu вы могли просто sudo apt-get install python3-pip(и затем использовать pip3), копия Python 3 pipникогда не была упакована для 12.04.

Поэтому вам нужно следовать более старомодному маршруту установки easy_install:

sudo apt-get install python3-setuptools
sudo easy_install3 pip

Теперь есть все шансы, что это будет конфликтовать с Python 2 pipи переопределять /usr/bin/pip , потому что он установит основанный на python3, /usr/local/bin/pipкоторый также находится в $ PATH Ubuntu 12.04.

Это не должно перезаписывать это так, пока Вы знаете это, это могло бы быть приемлемым. Однако, возможно, было бы лучше начать исследовать счастливый мир, virtualenvкак предполагает этот ответ .

В качестве альтернативы вы можете переименовать легко устанавливаемую версию pip на python3:

sudo mv /usr/local/bin/pip /usr/local/bin/pip-3

Затем вы можете подтвердить, что ваш существующий пункт по-прежнему основан на python2.7:

pip --version

1
Это вызывает проблемы у некоторых людей, когда файлы не для чтения в мире /usr/local/lib/python3.2/dist-packages/.
Мариус Гедминас

1
Это, несомненно, лучший ответ на поставленный вопрос, но если вы используете более новую версию Ubuntu, то приведенный ниже ответ dmeu более уместен.
brandizzi

1
Не делай этого. Это шланги вашей установки. pip8 хочет python3.4, но это будет включать python3.2 в качестве требования для инструментов установки python3, и тогда вы не сможете удалить его, если pip3 не запускается из-за проблем совместимости. Это полностью ломает все. Вот заметки, чтобы вы вернулись в стабильное место getpostdelete.com/unscrewing.txt (это для LTR 12.04). Обратите внимание, что это не будет работать как скрипт. Прочитайте каждый комментарий и решите для себя, хотите ли вы подвергнуться связанным рискам. Уже 20 лет я пользуюсь Linux, но я не утверждаю, что это решение подходит именно вам.
Кристополус

1
sudo apt-get install python3-setuptoolsи sudo easy_install3 pipотлично работает на Ubuntu Trusty (14.04) ;-)
Maxwel Leite

1
ты возбуждаешь голос за то, что 12.04 устарел от меня;)
Маркус

43

Вы также можете установить его, sudo apt-get install python3-pipа затем позвонить pip3. И вуаля


11
Не на Ubuntu 12.04 LTS.
Мариус Гедминас

2
@MariusGedminas Тогда, возможно, вам не следует использовать исключительно устаревший репозиторий. Даже если preciseэто все еще поддерживается , это не обязательно означает, что в нем установлено новейшее программное обеспечение. Это просто означает, что они держат его в сети, на «официальном репо», а не перемещают его в «старое репо», где apt-get не сможет получить к нему доступ; чтобы ваш менеджер пакетов не сломался. Показательный пример: я попробовал это, и это прекрасно работает; Мой sources.list использует trustyрепозиторий, который можно использовать в 12.04, просто сделав несколько дополнений к вашему sources.list и выполнив обновление apt-get.
Брэден Бест

1
Также обратите внимание на возможность анаконды
dmeu

это полезно, когда вы хотите установить pip3 глобально
cyberbikepunk

@BradenBest не уверен, правда ли это, но, похоже, это версия ubuntu в Docker. Какую версию я должен использовать? У меня также возникают проблемы при установке pip3 и я хочу установить его.
Чарли Паркер

13

Если вы работаете с несколькими версиями python на одном компьютере, может быть полезно работать с виртуальными средами . Это позволяет вам работать с любым количеством экземпляров Python, каждый из которых имеет свой собственный набор пакетов. Это очень полезно, если вы работаете с несколькими версиями Python и / или если вашим проектам требуются разные версии одного и того же пакета (ов).

Чтобы настроить это:

sudo pip install virtualenv 

Это можно сделать с ЛЮБЫМ пипом, а также со стандартным пипом, используя python 2.7. Затем, чтобы создать виртуальную среду с python3 в качестве интерпретатора, выполните:

virtualenv my_py3 --python=/usr/bin/python3
source my_py3/bin/activate # to activate the python3 environemt

Затем установите любые пакеты, которые вы можете использовать

pip install <package> # no sudo required now, as you're IN the virtual environment

Чтобы остановить виртуальную среду, просто введите:

deactivate

2

После установки python 3.3 с использованием PPA для Ubuntu 12.04 я установил easy_install3.3 с использованием локально, используя следующие команды

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

Это позволяет избежать загрязняющей установки сайта из pipи easy_install. Наконец я добавил $HOME/.local/binк своему пути. Теперь я могу бежать pip3.3!


2

Чтобы добавить ответ dmeu, вам, возможно, придется обновить свой, /etc/apt/sources.listчтобы включить зеркала из более позднего репозитория, такого как trusty.

sudo vi /etc/apt/sources.list
sudo apt-get update

Чтобы уточнить, что означает «Долгосрочная поддержка», это не обязательно означает, что они постоянно следят preciseза новейшим и лучшим программным обеспечением. Конечно, вы получите от него несколько обновлений, но тогда у вас будут случаи, когда определенные пакеты не существуют, например python3-pip, которые существуют в trustyрепо, например.

Что означает LTS, так это то, что они поддерживают preciseосновной репозиторий, чтобы ваш менеджер пакетов не сломался. В конечном итоге это даст вам возможность выполнить apt-get update, upgrade и dist-upgrade, когда 12.04 окончательно устареет. Они называют это поддержкой, а не ультрасовременным, по причине.

Если маршрут apt-get по-прежнему не работает, вы также можете попробовать загрузить пакет .deb из python3-pip и использовать для его установки dpkg, также известный как менеджер пакетов debian.

sudo dpkg -i <name-of-package>.deb

Надеюсь это поможет.


1
На свежую Ubuntu 18.04 LTS sudo apt-get install python3-pipне смог найти python3.pip. Выполнение и sudo apt-get updateповторение неудачной установки сработало.
Дэвид Чинг

@DavidChing на всякий случай, Trusty 14.04.
Брэден Бест

1

теперь мой любимый вариант, чтобы установить anacondaили minicondaдля Python3: https://www.continuum.io/downloads

Любой пакет может быть установлен conda install package-name

Если вам нужен python2, вы можете создать виртуальную среду:

conda create -n python2 python=2.7 anaconda source activate python2

Подробности смотрите здесь: https://stackoverflow.com/a/24415581/551694


1

Добавление вселенной в репозитории делает свое дело.
Здесь я нашел это:

Цитата Вы должны включить категорию юниверса, которая содержит пакет python-pip.

Открыть /etc/apt/sources.listс помощью редактора

sudo nano /etc/apt/sources.list

затем добавьте юниверс в конце каждой строки, например так:

deb http://archive.ubuntu.com/ubuntu bionic main **universe**
deb http://archive.ubuntu.com/ubuntu bionic-security main **universe** 
deb http://archive.ubuntu.com/ubuntu bionic-updates main **universe**

затем запустите:

sudo apt update

и наконец:

sudo apt install python-pip

0

Я пытался:

sudo-apt get update
sudo apt-get install python3-pip

Похоже, это помогло мне. Я надеюсь, что это помогает другим людям, имеющим ту же проблему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.