Solución:
No estaré de acuerdo con la respuesta aceptada y señalaré que pip install [some-pypi-package]
suele ser la mejor forma de instalar paquetes PyPi en entornos Conda.
Si bien los paquetes no serán administrados por el administrador de paquetes de Conda, aún serán administrados por el entorno de Anaconda. Descargará la versión correcta del paquete para la instalación activa de Python y la actualizará correctamente usando el pip
gerente de empaquetación.
Cuando use Anaconda, debe recurrir a conda
antes de pip
cuando puede, pero no pierde ninguno de los beneficios de replicabilidad de usar Anaconda cuando usa pip
.
Anaconda publicó recientemente un documento que respalda esto: https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#using-pip-in-an-environment
Si desea construir paquetes conda para paquetes PyPI, la forma recomendada es usar conda skeleton pypi package
y use conda build package
en la receta que crea. Para instalar el paquete, use conda install --use-local package
(aquí y en otros lugares, package
es el nombre del paquete PyPI que desea instalar).
Deberá actualizar la receta cada vez que se actualice el paquete.
También puedes usar pip
para instalar estos paquetes. Hay dos desventajas: en primer lugar, estos paquetes no serán administrados por conda en absoluto. En segundo lugar, estos paquetes no funcionarán si su versión de Python predeterminada es diferente de la versión de Python que está usando en conda.
Desde la versión 4.6.0, Conda ha mejorado su interoperabilidad con pip:
Conda y pip históricamente han tenido dificultades para llevarse bien. Pip no ha respetado las limitaciones del entorno de Conda, mientras que Conda ha estado muy feliz de aplastar el software instalado por pip. Es un desastre. Conda 4.6.0 agrega soporte de vista previa para una mejor interoperabilidad. Con esta interoperabilidad, Conda puede usar paquetes instalados por pip para satisfacer las dependencias, e incluso puede eliminar el software instalado por pip limpiamente y reemplazarlos con paquetes de Conda cuando sea apropiado. Todavía hay margen de mejora antes de que pip y Conda se conviertan en buenos mejores amigos, pero esperamos que este sea un buen comienzo. Esta función está deshabilitada de forma predeterminada en este momento porque puede afectar significativamente el rendimiento de Conda. Si desea probarlo, puede establecer esta configuración de condarc:
conda config --set pip_interop_enabled True
Entonces, la forma de obtener paquetes de PyPI en conda (en el momento de escribir esto) parece ser:
pip install <package>
Si desea que conda reemplace los paquetes de PyPI con los suyos propios (cuando sea posible), simplemente ejecute:
conda update --all
Dado que se realiza la configuración anterior. Conda marca sus propios canales como de mayor prioridad que pip, por lo que los paquetes serán reemplazados.