Я знаю pip
, это менеджер пакетов для пакетов Python. Тем не менее, я видел установку на веб-сайте conda
IPython для установки IPython.
Могу ли я использовать pip
для установки IPython? Почему я должен использовать в conda
качестве другого менеджера пакетов Python, когда у меня уже есть pip
?
В чем разница между pip
и conda
?
conda
/enpgk
ориентированно наnew users who want to get up and running with minimal effort
: пологе / Анакондой является автономным environement, которые не мешают систему питон (как venv , но более мощный). Кстати, IPyhton, а не iPython (в верхнем регистре I)Ответы:
Цитата из блога Conda :
Итак, Conda - это инструмент для установки и упаковки, который стремится сделать больше, чем то, что
pip
делает; обрабатывать библиотечные зависимости вне пакетов Python, а также сами пакеты Python. Конда также создает виртуальную среду, как этоvirtualenv
делает.Таким образом, Conda следует сравнить с Buildout, возможно, еще одним инструментом, который позволяет вам выполнять задачи установки как Python, так и не Python.
Поскольку Conda вводит новый формат упаковки, вы не можете использовать
pip
и Conda взаимозаменяемо;pip
невозможно установить формат пакета Conda. Вы можете использовать два инструмента бок о бок (устанавливаяpip
с помощьюconda install pip
), но они также не взаимодействуют.После написания этого ответа Анаконда опубликовала новую страницу « Понимание Конды и Пипа» , которая также подтверждает это:
и далее
источник
pip install
.Вот краткое изложение:
зернышко
Конда
conda build
который собирает пакеты из исходного кода, ноconda install
сам устанавливает вещи из уже собранных пакетов Conda.В обоих случаях:
Первые два пункта Conda - это то, что делает его преимуществом перед pip для многих пакетов. Поскольку pip устанавливается из исходного кода, может быть болезненно устанавливать что-либо вместе с ним, если вы не можете скомпилировать исходный код (это особенно верно для Windows, но это может быть верно и для Linux, если пакеты имеют какую-то сложную библиотеку C или FORTRAN). зависимостей). Конда устанавливается из бинарного файла, это означает, что кто-то (например, Continuum) уже проделал тяжелую работу по компиляции пакета, и поэтому установка проста.
Есть также некоторые различия, если вы заинтересованы в создании собственных пакетов. Например, pip построен поверх setuptools, тогда как Conda использует свой собственный формат, который имеет некоторые преимущества (например, статичность и, опять же, независимость от Python).
источник
pip install --use-wheel <package>
будет установлен встроенный пакет. Смотрите здесь: wheel.readthedocs.org/en/latest . Однако мой личный опыт работы с колесом таков, что так мало научных пакетов колес доступно, что оно чисто академическое. И, конечно же, установка pip в большинстве случаев не работает и в Windows, если ваша среда сборки настроена неправильно. Итак, на данный момент, conda ftw.Другие ответы дают подробное описание деталей, но я хочу выделить некоторые моменты высокого уровня.
pip - менеджер пакетов, который облегчает установку, обновление и удаление пакетов python . Это также работает с виртуальным питоном средами .
conda - менеджер пакетов для любого программного обеспечения (установка, обновление и удаление). Это также работает с виртуальной системой средами.
Одна из целей разработки conda состоит в том, чтобы упростить управление пакетами для всего программного стека, требуемого пользователями, из которых одна или несколько версий Python могут составлять лишь небольшую часть. Это включает в себя низкоуровневые библиотеки, такие как линейная алгебра, компиляторы, такие как mingw для Windows, редакторы, инструменты контроля версий, такие как Hg и Git, или любые другие, требующие распространения и управления .
Для управления версиями pip позволяет вам переключаться между несколькими средами Python и управлять ими .
Conda позволяет вам переключаться между несколькими средами общего назначения и управлять ими, в которых разные номера версий могут различаться, например C-библиотеки, или компиляторы, или наборы тестов, или движки баз данных и так далее.
Conda не ориентирована на Windows, но в Windows это, безусловно, лучшее решение, доступное в настоящее время, когда необходимо установить и управлять сложными научными пакетами, требующими компиляции.
Я хочу плакать, когда думаю о том, сколько времени я потерял, пытаясь скомпилировать многие из этих пакетов с помощью pip в Windows, или отлаживать неудачные
pip install
сессии, когда требовалась компиляция.И наконец , Continuum Analytics также размещает (бесплатный) binstar.org (теперь называется anaconda.org ), чтобы позволить обычным разработчикам пакетов создавать свои собственные (встроенные!) Программные стеки, из которых смогут получать их пользователи
conda install
.источник
Keras
в свой код, установил anaconda на мой Mac, и Keras былconda
установлен иpip
установлен. Итак, когда я запускаю свой код в терминале, как узнать, какойkeras
импортируется (pip
тот илиconda
другой)?Не для того, чтобы сбить вас с толку, но вы также можете использовать pip в вашей среде conda, которая проверяет комментарии общих и специфичных для Python менеджеров выше.
Вы также можете добавить pip к пакетам по умолчанию в любой среде, чтобы они присутствовали каждый раз, чтобы вам не приходилось следовать приведенному фрагменту.
источник
fully supported
?fully recommended
на мой взгляд, лучше использовать pip, чем conda, в среде conda, и я не уверен, что вы это имеете в виду?Цитата из статьи Conda для Data Science на сайте Continuum:
источник
Цитата из Конды: мифы и заблуждения (подробное описание):
...
Миф № 3: Конда и Пип являются прямыми конкурентами
Реальность: Conda и pip служат различным целям и напрямую конкурируют в небольшом подмножестве задач, а именно: установка пакетов Python в изолированных средах.
Pip, который обозначает P ip I nstalls P ackages, является официально санкционированным менеджером пакетов Python и чаще всего используется для установки пакетов, опубликованных в индексе пакетов Python (PyPI). И pip, и PyPI управляются и поддерживаются Python Packaging Authority (PyPA).
Короче говоря, pip - менеджер общего назначения для пакетов Python; conda - независимый от языка кроссплатформенный менеджер среды. Для пользователя наиболее существенное различие, вероятно, заключается в следующем: pip устанавливает пакеты Python в любой среде; Конда устанавливает любой пакет в среде Конда. Если все, что вы делаете, это устанавливаете пакеты Python в изолированной среде, то conda и pip + virtualenv в основном взаимозаменяемы, по модулю некоторая разница в обработке зависимостей и доступности пакетов. Под изолированной средой я подразумеваю conda-env или virtualenv, в которых вы можете устанавливать пакеты, не изменяя вашу системную установку Python.
Даже если оставить в стороне миф № 2, если мы сосредоточимся только на установке пакетов Python, conda и pip предназначены для разных аудиторий и для разных целей. Если вы хотите, скажем, управлять пакетами Python в рамках существующей системной установки Python, conda не может вам помочь: она может устанавливать пакеты только в средах conda. Если вы хотите, скажем, работать со многими пакетами Python, которые полагаются на внешние зависимости (NumPy, SciPy и Matplotlib - типичные примеры), при отслеживании этих зависимостей осмысленным образом, pip не может вам помочь: по замыслу, он управляет пакетами Python и только пакетами Python.
Conda и pip - не конкуренты, а инструменты, ориентированные на разные группы пользователей и модели использования.
источник
Для пользователей WINDOWS
Ситуация со «стандартными» упаковочными инструментами в последнее время улучшается:
на самом pypi, по состоянию на сентябрь, сейчас 48% пакетов колес. 11-е 2015 (по сравнению с 38% в мае 2015 года, 24% в сентябре 2014 года),
формат колеса теперь поддерживается "из коробки" в последней версии Python 2.7.9,
«Стандартные» + «тонкие» упаковки инструментов улучшаются также:
Вы можете найти почти все научные пакеты в формате колеса на http://www.lfd.uci.edu/~gohlke/pythonlibs ,
проект mingwpy может однажды принести пользователям Windows пакет «компиляции», позволяющий при необходимости устанавливать все из исходного кода.
Упаковка «Конда» остается лучше для рынка, на котором она обслуживается, и выделяет области, в которых «стандарт» должен улучшиться.
(также, спецификация зависимости множественных усилий, в стандартной системе колес и в системе conda, или buildout, не очень питонна, было бы неплохо, если бы все эти «базовые» методы упаковки могли бы сходиться через своего рода PEP)
источник
pip
менеджер пакетовconda
является одновременно менеджером пакетов и менеджером среды.Деталь:
Ссылки
источник
Конечно, оба (первый подход на странице)
и (третий подход, второй
conda
)являются официально рекомендуемыми способами установки .
Как сказано здесь :
Конда превосходит пип в ( YMMV )
На это широко отвечают все остальные.
источник
pip
только для Pythonconda
предназначен только для Anaconda + других научных пакетов, таких как зависимости R и т. д. Не всем нужна Anaconda, которая уже поставляется с Python. Anaconda в основном для тех, кто занимается машинным обучением / глубоким обучением и т. Д. Казуальный разработчик Python не будет запускать Anaconda на своем ноутбуке.источник
Возможно, я обнаружил еще одно отличие незначительного характера. У меня есть среда Python,
/usr
а не/home
или что-то еще. Для того, чтобы установить на него, я должен был бы использоватьsudo install pip
. Для меня нежелательный побочный эффектsudo install pip
немного отличался от того, что широко сообщалось в других местах: после этого мне пришлось бежатьpython
сsudo
, чтобы импортировать любой изsudo
-установлен пакетов. Я отказался от этого и в конце концов обнаружил, что могу использоватьsudo conda
для установки пакетов в среду, в/usr
которой затем импортируется нормально, без необходимостиsudo
разрешенияpython
. Я даже использовал,sudo conda
чтобы исправить сломанный,pip
а не с помощьюsudo pip uninstall pip
илиsudo pip --upgrade install pip
.источник
PIP и Conda - это разные приложения для достижения одной и той же цели. Оба являются стандартными способами установки пакетов. Основным отличием является источник файлов пакета. У Pypi будет больше «экспериментальных» пакетов или более новых версий пакетов. Мне много раз приходилось использовать pip из среды conda. Есть пакеты, которые существуют только на pypi, поэтому conda их не найдет. Я обычно сначала пытаюсь установить conda, и если это не работает, pip install работает в большинстве случаев.
источник