Каков официальный "предпочтительный" способ установки pip и virtualenv по всей системе?


это то, что люди, кажется, рекомендуют чаще всего:

$ sudo apt-get install python-setuptools
$ sudo easy_install pip
$ sudo pip install virtualenv

или это, что я получил от http://www.pip-installer.org/en/latest/installing.html:

$ curl -O https://github.com/pypa/virtualenv/raw/master/virtualenv.py
$ python virtualenv.py my_new_env
$ . my_new_env/bin/activate
(my_new_env)$ pip install ...

или что-то совсем другое?

16 85

16 ответов:

Если вы можете установить последнюю версию Python (2.7.9 и выше) Pip теперь в комплекте с ним. Смотрите: https://docs.python.org/2.7//installing/index.html
Если нет :
обновление (из заметки):

начиная с v1.5. 1, pip не требует setuptools перед запуском get-pip.py. кроме того, если setuptools (или distribute) еще не установлен, get-pip.py установит setuptools для вас.

теперь я бегу постоянный адрес статьи:

curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python

вот официальные инструкции по установке : http://pip.readthedocs.org/en/latest/installing.html#install-pip

EDIT 25-Jul-2013:
Изменен URL для установки setuptools.

EDIT 10-Feb-2014:
Удалена установка setuptools (спасибо @Ciantic)

EDIT 26-Jun-2014:
Обновленный URL снова (спасибо @LarsH)

изменить 1-Mar-2015:
Pip теперь в комплекте с Python

http://www.pip-installer.org/en/latest/installing.html это действительно канонический ответ на этот вопрос.

в частности, системной инструкции:

$ curl -O http://python-distribute.org/distribute_setup.py
$ python distribute_setup.py
$ curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py
$ python get-pip.py

раздел, указанный в вопросе, является virtualenv инструкции, а не общесистемные. Элемент easy_install инструкции были вокруг дольше, но это не обязательно делать это таким образом больше.

этот ответ приходит от @webology в Twitter:

$ sudo apt-get install python-setuptools
$ sudo easy_install pip
$ sudo pip install --upgrade pip virtualenv virtualenvwrapper

мои добавленные заметки:

  • на Mac / Windows (и Linux, если репозиторий apt устарел) вы бы заменили первый шаг загрузкой setuptools из http://pypi.python.org/pypi/setuptools
  • в Windows вам придется опустить virtualenvwrapper с последнего шага и установить его вручную каким-то образом. Я не знаю, есть ли способ сделать это без Cygwin, но я надеюсь так.

на Ubuntu 12.04 мне повезло просто использовать менеджер пакетов:

sudo apt-get install python-pip virtualenvwrapper

нет предпочтительного метода - все зависит от ваших потребностей. Часто вам нужно иметь разные интерпретаторы Python в системе по какой-либо причине. В этом случае вам нужно установить материал индивидуально для каждого интерпретатора. Кроме того: я предпочитаю устанавливать вещи сам, а не зависеть от предварительно упакованных вещей, иногда вызывающих проблемы, но это только один возможный вариант.

на самом деле нет ни одного "ответа" на этот вопрос, но есть определенно некоторые полезные концепции, которые могут помочь вам прийти к решению.

первый вопрос, на который нужно ответить в вашем случае использования: "хочу ли я использовать системный Python?"Если вы хотите использовать Python, распространяемый с вашей операционной системой, то использование метода установки apt-get может быть просто прекрасным. Однако в зависимости от способа распространения операционной системы вам все равно придется задать еще несколько вопросов вопросы, такие как "хочу ли я установить несколько версий этого пакета?"Если ответ "да", то, вероятно, не стоит использовать что-то вроде apt. Dpkg в значительной степени просто распакует архив в корне файловой системы, поэтому до сопровождающего пакета, чтобы убедиться, что пакет устанавливается безопасно при очень небольших предположениях. В случае большинства пакетов debian я бы предположил (кто-то может смело исправить меня здесь), что они просто untar и предоставляют пакет верхнего уровня.

например, скажем, что пакет "virtualenv", вы бы в конечном итоге с /usr/lib/python2.x/site-packages/virtualenv. Если вы установите его с easy_install вы получите что-то вроде /usr/lib/python2.x/site-packages/virtualenv.egg-link это может указывать на /usr/lib/python2.x/site-packages/virtualenv-1.2-2.x.egg который может быть каталог или молнии яйцо. Pip делает что-то подобное, хотя он не использует яйца и вместо этого разместит пакет верхнего уровня непосредственно в

поскольку virtualenvs содержат pip по умолчанию, я почти никогда не устанавливаю pip глобально. То, что я делаю, в конечном итоге выглядит так:

$ sudo apt-get install python-setuptools
$ curl -O http://python-distribute.org/distribute_setup.py
$ sudo python distribute_setup.py
$ sudo easy_install virtualenv

затем я приступаю к установке и настройке virtualenvwrapper по своему вкусу, и я ухожу. это также может быть, стоит взглянуть на виртуальное окружение-буррито Джереми компании Avnet:

https://github.com/brainsik/virtualenv-burrito

@erichholscher говорит в Twitter: "тот, что в официальных документах.."

это отличный момент, Вы должны делать то, что говорят документы.

цитируется из официальных инструкций по установке pip по адресу http://www.pip-installer.org/en/latest/installing.html:

$ curl -O https://github.com/pypa/virtualenv/raw/master/virtualenv.py
$ python virtualenv.py my_new_env
$ . my_new_env/bin/activate
(my_new_env)$ pip install ...

начиная с дистрибутива пакетов, вы можете использовать:

sudo apt-get install python-virtualenv

, который позволяет создавать virtualenvs, или

sudo apt-get install python{,3}-pip

что позволяет устанавливать произвольные пакеты в ваш домашний каталог.

если вы привыкли к virtualenv, первая команда дает вам все, что вам нужно (помните, что pip входит в комплект и будет установлен в любом virtualenv, который вы создаете).

если вы просто хотите установить пакеты, вторая команда дает вам то, что вам нужно. Использовать Пип вот так:

pip install --user something

и поставить что-то вроде

PATH=~/.local/bin:$PATH

в своем ~/.bashrc.


если ваш дистрибутив является древним, и вы не хотите использовать его пакеты вообще (за исключением самого Python, вероятно), вы можете скачать virtualenv либо как tarball, либо как автономный скрипт:

wget -O ~/bin/virtualenv https://raw.github.com/pypa/virtualenv/master/virtualenv.py
chmod +x ~/bin/virtualenv

если ваш дистрибутив больше похож на bleeding edge, Python3. 3 имеет встроенные возможности virtualenv:

python3 -m venv ./venv

это работает путь быстрее, но setuptools и pip не включается.

чтобы установить pip на mac (osx), следующий лайнер отлично работал для меня:

sudo easy_install pip

этого:

curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
python get-pip.py
pip install virtualenv

посмотреть

в Raspbian даже нет необходимости упоминать python2.7. Действительно, это лучший способ установить pip, если версия python меньше 2.7.9.

curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo python

спасибо @tal-weiss

https://github.com/pypa/pip/raw/master/contrib/get-pip.py это, вероятно, правильный путь сейчас.

Я использую get-pip и virtualenv-burrito, чтобы установить все это. Не уверен, что требуется python-setuptools.

# might be optional. I install as part of my standard ubuntu setup script
sudo apt-get -y install python-setuptools

# install pip (using get-pip.py from pip contrib)
curl -O https://raw.github.com/pypa/pip/develop/contrib/get-pip.py && sudo python get-pip.py

# one-line virtualenv and virtualenvwrapper using virtualenv-burrito
curl -s https://raw.github.com/brainsik/virtualenv-burrito/master/virtualenv-burrito.sh | bash

на Debian лучшим способом сделать это было бы

sudo apt-get install python-pip

первый метод в порядке. Единственная проблема, которую я вижу, заключается в том, что вы можете получить старую версию setuptools (если репозиторий apt не был обновлен..