Virtual Environments - Python - Mac OSX
by MGonzalez506 in Teachers > 9
1536 Views, 0 Favorites, 0 Comments
Virtual Environments - Python - Mac OSX
Este es un tutorial pequeño de cómo configurar Python Virtual Environments en MAC OSx.
Un ambiente virtual permite desarrollar un proyecto o múltiples proyectos a la vez, instalando las librerías y dependencias en un ambiente "controlado".
En otras palabras si se tiene un proyecto que debe correr con una versión de librerías diferente a otro, en caso de no utilizar ambientes virtuales, habría un conflicto entre las librerías de uno de los proyectos y el otro, por ser de versiones diferentes.
Sin embargo con Virtual Environments no se tiene este problema. A continuación una serie de ejemplos que pueden suceder:
PROYECTO #1
- Utiliza la librería X versión 1.0
- Por lo tanto se crea un ambiente virtual de Python donde se instalará esa librería X versión 1.0
PROYECTO #2
- Utiliza la librería X versión 1.2
- Por lo tanto se crea un ambiente virtual de Python donde se instalará esa librería X versión 1.2
PROYECTO #1
- Se desea probar el mismo proyecto pero ahora con la librería X versión 1.2
- Se tienen dos opciones:
- Utilizar el ambiente virtual del PROYECTO #2, o bien
- Crear un ambiente virtual específico para el PROYECTO #1, instalando en ese ambiente virtual la librería X versión 1.2
Instalando Python En MacOSx
Para instalar python en Mac OSx, se debe ir a la siguiente dirección web: https://www.python.org/downloads/
Y descargar la versión más reciente de Python.
Una vez finalizada la descarga, se debe obtener el lugar donde se encuentra instalada la versión de python descargada.
Para esto se abre el terminal (confirmar que se esté utilizando el terminal con bash shell en lugar de zsh shell)* se utiliza el comando:
which python3
Acá se va a mostrar que el python3 se encuentra instalado en:
/usr/local/bin/python3
Una vez ubicado de dónde se está corriendo el comando, se debe buscar exactamente dónde está instalado, es por esto que se debe ingresar a la dirección:
cd /usr/local/bin/
Y se listan los archivos que estén dentro:
ls -la
Se puede observar que el python que recién se instaló, fue guardado en:
/Library/Frameworks/Python.framework/Versions/3.10/bin/
Así cualquier paquete instalado con pip3 será almacenado también en esta dirección.
*Es importante que el "shell" terminal esté configurado para Bash, debido a que los nuevos sistemas operativos de Mac, vienen configurados por default para utilizarse terminal con zsh en lugar de bash.
Paso siguiente será instalar utilizando pip3, virtualenv y virtualenvwrapper 4.8.4
sudo pip3 install virtualenv virtualenvwrapper=='4.8.4'
Importante notar las comillas en el código y notar que son comillas sencillas. Hay algunos editores de texto que modifican estas comillas y pueden generar un error.
Ahora es importante crear la carpeta donde se van a almacenar los ambientes virtuales.
Todas las instalaciones de paquetes especiales que están en ambientes virtuales, se instalan dentro de estas carpetas. Si se quiere eliminar un ambiente virtual, simplemente se borra la carpeta con el nombre del ambiente virtual.
En este caso la carpeta "master" donde estarán almacenados todos los ambientes virtuales tendrá por nombre: "virtualenvs"
mkdir ~/.virtualenvs
Posteriormente se debe modificar el archivo que el terminal lee apenas se inicia la sesión en la computadora o bien apenas se abre una ventana nueva del Terminal.
Tradicionalmente se ha venido utilizando el bash como shell, por lo tanto vamos a crear este archivo de la siguiente forma:
sudo nano ~/.bashrc
Una vez que se abra el archivo, se agregan las siguientes líneas de código al final del documento:
VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.10/bin/python3 VIRTUALENVWRAPPER_VIRTUALENV=/Library/Frameworks/Python.framework/Versions/3.10/bin/virtualenv export PATH=/usr/local/bin:$PATH export WORKON_HOME=~/.virtualenvs source /Library/Frameworks/Python.framework/Versions/3.10/bin/virtualenvwrapper.sh
Una vez que está editado el documento se puede salvar (CTRL+O) y cerrar el documento (CTRL+X)
CTRL + O Tecla: ENTER CTRL + X
**Importante revisar que estas líneas estén bien escritas, un punto, un espacio, un carácter mal escrito pueden generar errores, así que lo primero es revisar que todos los espacios estén en su terminal bien colocados y que no hayan espacios o caracteres extra.
Ahora bien antes de crear el primer ambiente virtual, es necesario realizar algunas configuraciones extra.
En este caso lo primero es crear el archivo ~/.bash_profile
sudo nano ~/.bash_profile
Este archivo será llamado cada vez que se inicie sesión o bien se abra una nueva ventana del Terminal.
Para esto se deben agregar las siguientes líneas de comando:
# Setting PATH for Python 3.10 PATH="/Library/Frameworks/Python.framework/Versions/3.10/bin:${PATH}" export PATH=/usr/local/bin:$PATH [[ -s ~/.bashrc ]] && source ~/.bashrc
Finalmente para crear un ambiente virtual se utiliza el comando "mkvirtualenv".
Por ejemplo se puede crear un ambiente virtual que se llame "prueba" de la siguiente manera:
mkvirtualenv prueba
Una vez creado ya se puede notar como el primer elemento que se ve en el terminal es el nombre del ambiente virtual, recordando que se está trabajando sobre ese ambiente virtual.
A la vez para desactivar un ambiente virtual se utiliza solamente el comando:
deactivate
Y para activar un ambiente virtual o para cambiarse de un ambiente virtual a otro se puede utilizar el comando:
workon EL_NOMBRE_DEL_AMBIENTE_VIRTUAL_EN_EL_QUE_SE_QUIERE_TRABAJAR
Y finalmente si se desea conocer el nombre de todos los ambientes virtuales disponibles, es necesario solamente correr el comando:
workon