Используйте pip или conda для управления пакетами?
Я довольно долго занимался машинным обучением, используя matlab, и недавно переключился на python, а для установки некоторых пакетов использовал его менеджер пакетов и успешно установил много пакетов. Несколько дней назад я начал использовать conda, и все мои ранее установленные пакеты переопределялись.
Я действительно хочу знать разницу между pip и conda и что произойдет, если я использую pip для установки пакетов вместо conda?
3 ответа
Пип и Конда имеют общие черты и различия. Трудно объяснить лучше, чем то, что сделал здесь Джейк ВандерПлас: https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/
Для вашего случая использования было бы лучше в любом случае стереть ваши ранее установленные пакеты pip и полагаться только на conda. Если это невозможно из-за отсутствия пакетов в conda, вы можете установить pip в conda и затем использовать conda install pip
, (по ссылке выше).
Я очень хочу узнать разницу между пип и конда
Посмотрите, в чем разница между pip и conda?
и что будет, если я использую pip для установки пакетов вместо conda?
Pip в целом (за исключением использования virtualenv) устанавливает пакеты как для всей системы (как root/ может быть как администратор), так и для пользователя. Conda устанавливает пакеты внутри своего маленького каталога world/, где их нужно активировать, переопределяя пакеты pip, как вы уже заметили.
В качестве решения вы можете установить пакеты через вашу систему сначала, pip во-вторых, и conda в-третьих.
Так что используйте системный пакет, если это все, что нужно. Если это слишком старо, например, вы можете использовать pip install.
Если вам нужен конкретный пакет, возможно, только для одного проекта, или если вам нужно поделиться проектом с кем-то еще, conda кажется более подходящим. Смотрите также В чем преимущество Пипа перед Анакондой?,
Надеюсь, что кто-то более опытный сможет расширить, но похоже, что Conda - это не PIP-совместимый инструмент развертывания как для Python, так и для непитоновских инструментов / пакетов. Conda выполняет собственную виртуальную установку Python и пакетов, а также не-Python-зависимостей.
PIP, с другой стороны, является специфичной для Python утилитой развертывания; он не знает о Конде, и Конда не знает о PIP.
Зная выше, имело бы смысл, что Конда не будет знать о ваших ранее развернутых пакетах PIP, так как эти два не совместимы.
К счастью, поскольку две системы разделены, вы сможете восстановить свою среду PIP, если решите, что на Conda не стоит переходить. В противном случае вы можете попробовать установить Matlib на Conda, чтобы имитировать то, что вы настроили на PIP:
Конда установить -c https://conda.anaconda.org/ioos matlab_kernel
Дополнительное чтение: