1.3. Entorno de desarrollo¶
Para preparar el entorno de desarrollo, ejecute los siguientes pasos:
1.3.1. Requerimientos previos¶
Actualizar repositorios de paquetes disponibles para instalar, con el siguiente comando:
sudo apt update && sudo apt upgrade -y
Instalar dependencias mínimas necesarias, con el siguiente comando:
sudo apt install -y build-essential python3-dev
Instalar el cliente git, con el siguiente comando:
sudo apt install -y git
Si ejecuto el comando anterior, entonces instalo las dependencias básicas para el desarrollo en Python 3.
1.3.2. Python package installer - pip¶
pip es el instalador de paquetes de Python. Se integra con la herramienta virtualenv, no hace instalaciones parciales, puede guardar el estado del paquete para reproducirlo, puede instalar desde fuentes que no sean Egg, y puede instalar desde repositorios de control de versiones.
Instalar la herramienta pip, ejecute el siguiente comando:
sudo apt install -y python3-pip
Para comprobar que la instalación de la herramienta pip este correctamente hecha,
ejecute el siguiente comando:
pip3 -V
Si ejecuto el comando anterior, este da como resultado lo siguiente:
pip 25.0.1 from /usr/bin/lib/python3.11/site-packages/pip (python 3.11)
Si muestra el numero de la versión instalada de pip, tiene correctamente instalada
la paquete. Con esto, ya tiene todo listo para continuar.
1.3.2.1. Cache local de paquetes con pip¶
Crear directorio cache para paquetes Python descargados. Cuando hay latencia de
Internet y se requiere la instalación de paquetes de Python por un archivo
requirements.txt de la herramienta pip
pero la instalación falló, entonces puede evitar que la herramienta pip vuelva
a descargar los paquetes previamente descargados, ejecutando este comando:
Cree un directorio cache para los paquetes descargando con la herramienta pip, ejecutando el siguiente comando:
mkdir -p ~/.cache/pip && mkdir ~/.pip
Cree el archivo de configuración de la herramienta pip, ejecutando el siguiente comando:
printf '[global]\ndownload_cache = ~/.cache/pip\n' \
>> ~/.pip/pip.conf
Así cada ves que ejecute el comando pip3 install de la herramienta pip
usara el directorio ~/.cache/pip como directorio cache, esto permite agilizar la descarga
de paquetes, ya que pip primero buscara en ese archivo
primero, si no esta descargado, lo buscara en Internet en el repositorio PyPI. Con esto,
ya tiene todo listo para continuar.
1.3.2.2. Gestionar paquetes Python¶
Para gestionar paquetes Python dentro de un entorno virtual creado, con el siguiente comando:
pip3 install cookiecutter
El paquete cookiecutter se instalo previamente puede usarlo vía script de línea de comando, con el siguiente:
cookiecutter --help
Ademas si requiere instalar paquetes Python con latencia de conexión a Internet. Cuando hay
latencia de Internet y se requiere la instalación de paquetes de Python, ejecute este
comando con el parámetro --timeout habilitado para el tiempo de espera:
virtualenv --python /usr/bin/python3 venv
source ./venv/bin/activate
pip3 install -U pip && pip3 install cookiecutter --timeout 120
También puede gestionar una lista de instalación de paquetes y sus versiones para indicar
a la herramienta pip que los instale con un solo comando, para esto cree y edite un
archivo, ejecutando lo siguiente:
nano requirements.txt
Agregue el siguiente contenido:
cookiecutter==2.6.0
Guarde el archivo y procede a ejecutar la herramienta pip, con el parámetro -r
seguido de la ruta absoluta o relativa del archivo previamente creado.
pip3 install -r requirements.txt
Luego de la instalación puede ejecuta el comando cookiecutter -V el cual ofrece una salida de la versión.
cookiecutter -V
Luego de la instalación puede ejecuta el comando pip3 freeze el cual ofrece una salida de paquetes instalados en formato de archivos requirements. Los paquetes se enumeran en un ordenan de forma tal que no distingue entre mayúsculas y minúsculas.
pip3 freeze
Si ejecuto el comando anterior, debería mostrar algo parecido al siguiente mensaje:
arrow==1.3.0
binaryornot==0.4.4
certifi==2025.1.31
chardet==5.2.0
charset-normalizer==3.4.1
click==8.1.8
cookiecutter==2.6.0
idna==3.10
Jinja2==3.1.6
markdown-it-py==3.0.0
MarkupSafe==3.0.2
mdurl==0.1.2
Pygments==2.19.1
python-dateutil==2.9.0.post0
python-slugify==8.0.4
PyYAML==6.0.2
requests==2.32.3
rich==13.9.4
six==1.17.0
text-unidecode==1.3
types-python-dateutil==2.9.0.20241206
urllib3==2.3.0
Usted puede actualizar el archivo requirements.txt con el resultado de la ejecución el comando
pip3 freeze ejecutando el siguiente comando:
pip3 freeze > requirements.txt
Así de esta forma congela las versiones usadas para el proceso de instalación de sus paquetes Python.
1.3.3. Entornos virtuales Python¶
Para la instalación de la herramienta de entornos virtuales en Python, ejecute el siguiente comando:
pip3 install virtualenv
sudo apt install -y python3-virtualenv
Cree un directorio raíz para almacenar los diversos entornos virtuales, ejecutando el siguiente comando:
mkdir ~/virtualenv && cd $_
Cree un entorno virtual llamado python3, ejecutando el siguiente comando:
virtualenv --python /usr/bin/python3 python3
Activar el entorno virtual llamado python3, ejecutando el siguiente comando:
source ~/virtualenv/python3/bin/activate
Para desactivar entorno virtual creado, con el siguiente comando:
deactivate
De esta forma, puedes tener un directorio común para almacenar diversos entornos virtuales.
Con herramientas como virtualenv puede gestionar diversos entornos virtuales de Python
para diversas versiones de Python, por ejemplo:
Diversas versiones de Python, es posible que requiera trabajar con un proyecto Python que
requiera la versión 3.9 y y al otro proyecto que requiera la versión 3.11, para estés
caso puede gestionar la instalación de las dos versiones de Python con la herramienta pyenv
y luego crear dos entornos virtuales para cada version, con los siguientes comandos:
Crear y activar un entorno virtual para la versión Python 3.9, ejecutando el siguiente comando:
virtualenv --python ~/.pyenv/shims/python3.9 ~/virtualenv/python39 && source ~/virtualenv/python39/bin/activate
Crear y activar un entorno virtual para la versión Python 3.11, ejecutando el siguiente comando:
virtualenv --python ~/.pyenv/shims/python3.11 ~/virtualenv/python311 && source ~/virtualenv/python311/bin/activate
En estos casos anteriores, hemos creado dos entornos virtuales como python39 y python311,
esto le permite crear diversos entornos virtuales para proyectos, con el nombre que quiera,
podría ser un entorno virtual para llamado acme_inc para un cliente llamado ACME Industry
o otro entorno virtual llamado test-django para unas pruebas de un proyecto de Django.
Truco
Normalmente es muy común conseguir en las instrucciones de instalación de entornos virtuales
para diversos proyectos Python, con los siguientes nombres .env, .venv y venv.
Con esto, ya tiene todo listo para continuar.
Importante
Usted puede descargar el archivo usado en esta sección haciendo clic en el
siguiente enlace: requirements.txt.
Truco
Para ejecutar el archivo requirements.txt, abra una consola de comando, active el entorno
virtual Python, y te ubicas en el directorio donde descargo el archivo, entonces ejecute el siguiente
comando:
pip3 install -r requirements.txt
¿Cómo puedo ayudar?
¡Mi soporte está aquí para ayudar!
Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. UTM - Madrid, España.
La hora aquí es actualmente 7:35 PM UTM.
Mi objetivo es responder a todos los mensajes dentro de un día hábil.