Entendiendo los entornos virtuales en Python

En este tutorial, aprenderás acerca de los entornos virtuales. Aprenderá sobre la importancia de usar entornos virtuales en Python y cómo comenzar a usar entornos virtuales.

¿Qué es un entorno virtual??

Un entorno virtual es una herramienta para mantener un espacio separado para un proyecto con sus dependencias y bibliotecas en un solo lugar. Este entorno es específico del proyecto en particular y no interfiere con las dependencias de otros proyectos.. 

Por ejemplo, puede trabajar en el proyecto X que usa la versión 1.0 de la biblioteca Z y también puede mantener el proyecto Y que usa la versión 2.0 de la biblioteca Z.

¿Cómo funcionan los entornos virtuales??

La herramienta de entorno virtual crea una carpeta dentro del directorio del proyecto. Por defecto, la carpeta se llama. Venv, pero también puedes ponerle un nombre personalizado. Mantiene los archivos ejecutables de Python y pip dentro de la carpeta del entorno virtual. Cuando se activa el entorno virtual, los paquetes instalados después de eso se instalan dentro de la carpeta del entorno virtual específico del proyecto.

Empezando con VirtualEnv

Primero, asegúrate de que tienes pipa instalado en su sistema. Puedes instalar pipa usando el siguiente comando:

sudo apt-get install python-pip python-dev build-essential

Utilizando pipa, instalar la herramienta de entorno virtual.

pip instalar virtualenv

Para empezar a usar virtualenv, Necesitas inicializarlo y activarlo. Empecemos por crear un nuevo directorio de proyectos Python. PythonApp.

mkdir PythonApp

Navega al directorio del proyecto PythonApp e inicialice el entorno virtual escribiendo el siguiente comando:

virtualenv PythonAppVenv

El comando anterior configurará el entorno virtual para el proyecto. PythonApp.

Crea una carpeta llamada PythonAppVenv dentro del directorio del proyecto PythonApp. Mantiene los ejecutables de Python y pip dentro de la carpeta del entorno virtual. Cualquier paquete nuevo instalado para el proyecto después de la activación del entorno virtual se coloca dentro de la carpeta del entorno virtual. Aquí está la estructura de carpetas:

Para comenzar a utilizar el entorno virtual, debe activarlo con el siguiente comando:

fuente PythonAppVenv / bin / activar

Una vez activado, deberías poder ver el PythonAppVenv nombre en el lado izquierdo de la solicitud de nombre.

Intentemos instalar un nuevo paquete al proyecto. PythonApp.

pip instalar el matraz

El nuevo paquete debe instalarse en la carpeta del entorno virtual. Compruebe la carpeta del entorno virtual en el interior lib / python2.7 / site-packages y deberías poder encontrar el recién instalado matraz paquete. Puedes aprender más sobre Flask en la página del proyecto.

Una vez que haya terminado con el entorno virtual, puede desactivarlo mediante el siguiente comando:

desactivar 

Más fácil de rastrear paquetes

Mientras trabaja con programas de Python, instala diferentes paquetes requeridos por el programa. Sigues trabajando y la lista de paquetes instalados continúa acumulándose. Ahora llega el momento en que necesita enviar el código Python al servidor de producción. Vaya ... Realmente no sabes qué paquetes has instalado para que el programa funcione. 

Todo lo que puede hacer es abrir el programa Python y verificar todos los paquetes que ha importado en su programa e instalarlos uno por uno..

Un entorno virtual proporciona un método más fácil para realizar un seguimiento de los paquetes instalados en el proyecto. Una vez que haya activado el entorno virtual, le ofrece la posibilidad de congelar el estado actual de los paquetes de entorno..

Puedes lograr esto usando el siguiente comando:

congelación de pip> requisitos.txt

El comando anterior crea un archivo llamado requisitos.txt que tiene detalles sobre los paquetes con versiones en el entorno actual. Aquí está cómo se ve:

Ahora este archivo sería realmente útil para implementar el proyecto en una plataforma diferente, ya que todas las dependencias del proyecto ya están a su disposición en el requisitos.txt expediente. Para instalar las dependencias del proyecto usando el requisitos.txt archivo, ejecute el siguiente comando:

pip install -r Requirements.txt

virtualenvwrapper hacer las cosas más fáciles

los virtualenv La herramienta es realmente una bendición para los desarrolladores. Pero se vuelve realmente complicado cuando tiene que lidiar con más de un entorno virtual. Para gestionar múltiples entornos virtuales, hay una extensión para el virtualenv herramienta llamada virtualenvwrapper

virtualenvwrapper es una envoltura alrededor de la virtualenv Herramienta que proporciona la funcionalidad para gestionar múltiples entornos virtuales..

Empecemos instalando virtualenvwrapper usando pip.

pip instalar virtualenvwrapper

Una vez que haya instalado virtualenvwrapper, debe configurar el directorio de trabajo donde se almacenarán los entornos virtuales. Ejecute el siguiente comando para configurar el directorio de trabajo para virtualenvwrapper:

exportar WORKON_HOME = .virtualenvs

El comando anterior establece el directorio de trabajo para virtualenvwrapper al .virtualenvs carpeta en el directorio home.

Usted puede o bien la fuente virtualenvwrapper comandos para ejecutar desde la terminal o agregar el virtualenvwrapper comandos a la .Bashrc.

fuente /usr/local/bin/virtualenvwrapper.sh

Ahora los comandos serán accesibles en el terminal actual presionando la tecla Lengüeta llave. Crear una nueva carpeta de proyecto llamada PythonProject. Navegue hasta el directorio del proyecto. Antes, cuando usabas virtualenv, primero creaste el entorno virtual y luego lo activaste. Utilizando virtualenvwrapper, puede completar ambas tareas usando un solo comando.

mkvirtualenv PythonVenv 

El comando anterior crea el entorno virtual y luego lo activa. 

Para desactivar el entorno virtual, debe escribir en el desactivar mando.

desactivar

Ahora suponga que en ciertos escenarios necesita cambiar entre los diferentes entornos virtuales en los que está trabajando. virtualenvwrapper provee un trabajar en Método para cambiar los entornos virtuales. El comando para cambiar el entorno virtual es: 

trabajo en PythonV

En el comando anterior, PythonV Es el nombre del entorno virtual. Aquí hay una imagen donde el trabajar en El comando se muestra en acción:

virtualenvwrapper También proporciona un comando para enumerar los entornos virtuales en su entorno..

ls $ WORKON_HOME

El comando anterior muestra una lista de entornos virtuales que existen en el entorno.

Para eliminar un entorno virtual existente, puede utilizar el rmvirtualenv mando.

rmvirtualenv PV

Hay un comando que crea un directorio de proyecto y su entorno virtual asociado. Navegue hasta el terminal y ejecute el siguiente comando:

mkproject NewPro

El comando anterior debe crear el proyecto y su entorno virtual asociado.

Hay algunos comandos más que puedes usar en virtualenvwrapper. Puede encontrar la lista de comandos disponibles escribiendo el siguiente comando:

virtualenvwrapper

Envolviendolo

En este tutorial, vio cómo comenzar a usar entornos virtuales en Python. Aprendiste la importancia de usar el entorno virtual y cómo funciona. También echas un vistazo a virtualenvwrapper, un envoltorio en el virtualenv Herramienta para la gestión de múltiples entornos virtuales..

¿Alguna vez has usado entornos virtuales en Python? Háganos saber sus pensamientos en los comentarios a continuación..