Manejo de Entornos de Python

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

Manejo

de entornos de python
Python es un lenguaje de programación densillo que nos permite hacer

muchas cosas, por ejemplo desarrollar aplicaciones y modelos de Machine

Learning.

Cuando desarrollamos en Python podemos escoger entre tener una

instalación global o una instalación en un ambiente aislado. Esto es de vital

importancia cuando desarrollamos distinas aplicaciones y cada una utiliza

versiones de los paquetes de los que depende; pero además permite

organizar nuestros programas, dejando de manera explícita las

dependencias que tienen, de tal manera que otra persona pueda usarlos

con facilidad.

Pip y Virtualenv
Pip es un paquete de Python que installa otros paquetes en algún entorno

en particular. Por ejemplo, pip install tensorflow instala el paquete


TensorFlow en el actual entorno de trabajo; que puede ser un entorno

virtual creado con Virtualenv o una instalación global.

Virtualenv es un paquete de Python que nos permite crear entornos

aislados de desarrollo, con el objetivo de evitar conflictos entre distintos

paquetes de Python. Para instalarlo, simplemente debemos correr el

comando pip install virtualenv .

También existe Pipenv, el cual reúne la funcionalidad de Pip y Virtualenv


en una sola herramienta.

Como en el curso estamos usando Conda, voy a omitir detalles de

Virtualenv, Pip y Pipenv, pero dejo los links para los que estén interesados.

Conda y Anaconda
Conda cumple las funciones de Virtualenv y Pip (o Pipenv): administra los

entornos e instala los paquetes o librerías. Además, Conda no está

restringido a Python; es un gestor de paquetes para varios lenguages de

programación, incluyendo R.

Anaconda es una distribución de Python que incluye varios paquetes útiles

pra Data Science y Machine Learning, como Numpy, Pandas, Scikit-learn,

entre otros. Es por eso que resulta conveniente para empezar a trabajar

rápidamente, especialmente para usuarios de Windows, ya que el

desarrollo de software suele ser más engorroso allí. La instalación de

Anaconda (o Miniconda, su versión con menos paquetes preconfigurados)

incluye Conda.

Los entornos de Conda se manejan desde la terminal de comandos.

Acontinuación los comandos más usados:

Crear un entorno. conda create --name <nombre del

entorno> python=<version de Python> <nombre de paquete 1>

<nombre de paquete 2> . Por ejemplo,

conda create --name datascience python=3.6


anaconda crea un entorno llamado datascience que trae

todos los paquetes que están incluidos en Anaconda.

conda create --name datascience python=3.6 numpy

pandas scikit-learn crea un entorno llamado

datascience que incluye Numpy, Pandas y Scikit-learn.


conda create --name vision python=3.6 numpy opencv

tensorflow crea un entorno llamado vision e instala

Numpy, Opencv y TensorFlow en él.

conda create --name oldenv python=2.7 crea un

entorno llamado oldenv que no incluye ningún paquete

especial.

Activar un entorno. activate <nombre del entorno>

(Windows) y source activate <nombre del entorno> (Linux o


macOS).

Listar mis entornos. conda env list o conda info --envs

Remover un entorno. conda env remove --name <nombre del

entorno>

Instalar un paquete en entorno activo. conda install -c

<ubicación del paquete> <nombre del paquete> , por ejemplo,

conda install -c conda-forge opencv .

Para más información, consulta la guía de usuario de Conda.

Finalmente…
Es importante conocer las dos herramientas, ya que ambas pueden

necesitarse en alguna situación en particular. Idealmente el entorno es

gestionado por alguien más dentro de la organización, pero esto no

siempre es posible o no podemos esperar a que alguien nos solucione los

problemas necesarios para continuar con nuestro trabajo.

Conda (y Anaconda) son bastante convenientes para liberarse de la

complejidad de instalar algunas dependencias externas a Python, como

librerías hechas en C, C++ o Fortran. Lo cual lo hace especialmente útil

para usuarios con poca experiencia en desarrollo de software y usuarios

Windows. Sin embargo, algunas herramientas de desarrollo, como algunas

librerías o herramientas para el despliegue de aplicaciones, aún no

funcionan apropiadamente con Conda, por ejemplo Zappa.

Por otro lado, Pip y Virtualenv solo se encargan de installar y gestionar los

paquetes de Python, por lo que cualquier otra dependencia se debe

solucionar por otro lado. Esto no es algo difícil si se desarrolla en un

entorno Linux o macOS.

Referencias
Pip

Virtualenv

Pipenv

Conda

Conda cheat sheet

Anaconda
Conda vs Pip

También podría gustarte