2.2 Contexto real

2.2 Contexto real
Hemos visto que Thonny es una herramienta especialmente disenada para el aprendizaje de Python, integrando diferentes módulos que facilitan su gestión. Si bien lo podemos utilizar para un desarrollo más «serio», se suele recurrir a un flujo de trabajo algo diferente en contextos más reales.

2.2.1 Python

La forma más habitual de instalar Python (junto con sus librerías) es descargarlo e instalarlo desde su página oficial:

  • Versiones de Python para Windows
  • Versiones de Python para Mac
  • Versiones de Python para Linux
Truco: Tutorial para instalar Python en Windows.
Anaconda

Otra de las alternativas para disponer de Python en nuestro sistema y que además es muy utilizada, es Anaconda. Se trata de un conjunto de herramientas, orientadas en principio a la ciencia de datos, pero que podemos utilizarlas para desarrollo general en Python (junto con otras librerías adicionales).

Existen versiones de pago, pero la distribución Individual Edition es «open-source» y gratuita. Se puede descargar desde su página web. Anaconda trae por defecto una gran cantidad de paquetes Python en su distribución.

Ver también:

Miniconda es un instalador mínimo que trae por defecto Python y un pequeño número de paquetes útiles.

2.2.2 Gestión de paquetes

La instalación limpia de Python ya ofrece de por sí muchos paquetes y módulos que vienen por defecto. Es lo que se llama la librería estándar. Pero una de las características más destacables de Python es su inmenso «ecosistema» de paquetes disponibles en el Python Package Index (PyPI).

Para gestionar los paquetes que tenemos en nuestro sistema se utiliza la herramienta pip, una utilidad que también se incluye en la instalación de Python. Con ella podremos instalar, desinstalar y actualizar paquetes, según nuestras necesidades. A continuación se muestran las instrucciones que usaríamos para cada una de estas operaciones:

Lista 2: Instalación, desinstalación y actualización del paquete pandas utilizando pip

2.2 Contexto real

Consejo: Para el caso de Anaconda usaríamos conda install pandas (aunque ya viene preinstalado).
2.2.3 Entornos virtuales

Nivel intermedio

Cuando trabajamos en distintos proyectos, no todos ellos requieren los mismos paquetes ni siquiera la misma versión de Python. La gestión de estas situaciones no es sencilla si únicamente instalamos paquetes y manejamos configuraciones a nivel global (a nivel de máquina). Es por ello que surge el concepto de entornos virtuales. Como su propio nombre indica se trata de crear distintos entornos en función de las necesidades de cada proyecto, y esto nos permite establecer qué versión de Python usaremos y qué paquetes instalaremos.

La manera más sencilla de crear un entorno virtual es la siguiente:

2.2 Contexto real

  • Línea 1: Entrar en la carpeta de nuestro proyecto.
  • Línea 2: Crear una carpeta .venv con los ficheros que constituyen el entorno virtual.
  • Línea 3: Activar el entorno virtual. A partir de aquí todo lo que se instale quedará dentro del entorno virtual.

El paquete de Python que nos proporciona la funcionalidad de crear y gestionar entornos virtuales se denomina virtualenv. Su instalación es sencilla a través del gestor de paquetes pip:

2.2 Contexto real

Si bien con virtualenv tenemos las funcionalidades necesarias para trabajar con entornos virtuales, destacaría una herramienta llamada virtualenvwrapper que funciona por encima de virtualenv y que facilita las operaciones sobre entornos virtuales. Su instalación es equivalente a cualquier otro paquete Python:

2.2 Contexto real

Veamos a continuación algunos de los comandos que nos ofrece:

2.2 Contexto real

2.2 Contexto real

  • $ mkvirtualenv envl: crea un entorno virtual llamado envl
  • $ pip install requests: instala el paquete requests dentro del entorno virtual envl
  • $ workon envl: activa el entorno virtual envl
  • $ lssitepackages: lista los paquetes instalados en el entorno

pyenv

pyenv permite cambiar fácilmente entre múltiples versiones de Python en un mismo sistema. Su instalación engloba varios pasos y está bien explicada en la página del proyecto.

La mayor diferencia con respecto a virtualenv es que no instala las distintas versiones de Python a nivel global del sistema. En vez de eso, se suele crear una carpeta .pyenv en el HOME del usuario, donde todo está aislado sin generar intrusión en el sistema operativo.

Podemos hacer cosas como:

  • Listar las versiones de Python instaladas:

2.2 Contexto real

  • Descubrir la versión global «activa» de Python:

2.2 Contexto real

  • Cambiar la versión global «activa» de Python:

2.2 Contexto real

  • Instalar una nueva versión de Python:

2.2 Contexto real

  • Activar una versión de Python local por carpetas:

2.2 Contexto real

También existe un módulo denominado pyenv-virtualenv para manejar entornos virtuales utilizando las ventajas que proporciona pyenv.

2.2.4 Editores

Existen multitud de editores en el mercado que nos pueden servir perfectamente para escribir código Python. Algunos de ellos incorporan funcionalidades extra y otros simplemente nos permiten editar ficheros. Cabe destacar aquí el concepto de Entorno de Desarrollo Integrado, más conocido por sus siglas en inglés IDE. Se trata de una aplicación informática que proporciona servicios integrales para el desarrollo de software.

Podríamos decir que Thonny es un IDE de aprendizaje, pero existen muchos otros. Veamos un listado de editores de código que se suelen utilizar para desarrollo en Python:

– Editores generales o IDEs con soporte para Python:

  • Eclipse + PyDev
  • Sublime Text
  • Atom
  • GNU Emacs
  • Vi-Vim
  • Visual Studio (+ Python Tools)
  • Visual Studio Code (+ Python Tools)

– Editores o IDEs específicos para Python: [1]

  • PyCharm
  • Spyder
  • Thonny

Cada editor tiene sus características (ventajas e inconvenientes). Supongo que la preferencia por alguno de ellos estará en base a la experiencia y a las necesidades que surjan. La parte buena es que hay diversidad de opciones para elegir.

2.2.5 Jupyter Notebook

Jupyter Notebook es una aplicación «open-source» que permite crear y compartir documentos que contienen código, ecuaciones, visualizaciones y texto narrativo. Podemos utilizarlo para propósito general aunque suele estar más enfocado a ciencia de datos: limpieza y transformación de datos, simulación numérica, modelado estadístico, visualización o «machine-learning»

Podemos verlo como un intérprete de Python (contiene un «kernel» que permite ejecutar código) con la capacidad de incluir documentación en formato Markdown, lo que potencia sus funcionalidades y lo hace adecuado para preparar cualquier tipo de material vinculado con lenguajes de programación.

Aunque su uso está más extendido en el mundo Python, existen muchos otros «kernels» sobre los que trabajar en Jupyter Notebook.

Ver también:

Sección sobre Jupyter.

Truco: Visual Studio Code también dispone de integración con Jupyter Notebooks.

2.2.6 repl.it

repl.it es un servicio web que ofrece un entorno de desarrollo integrado para programar en más de 50 lenguajes (Python incluido).

Es gratuito y de uso colaborativo. Se requiere una cuenta en el sistema para utilizarlo. El hecho de no requerir instalación ni configuración previa lo hace atractivo en determinadas circunstancias.

En su versión gratuita ofrece:

2.2 Contexto real

Figura 4: repl.it

  • Almacenamiento de 500MB.
  • Python 3.8.2 (febrero de 2022).
  • 117 paquetes preinstalados (febrero de 2022).
  • Navegador (y subida) de ficheros integrado.
  • Gestor de paquetes integrado.
  • Integración con GitHub.
  • Gestión de secretos (datos sensibles).
  • Base de datos clave-valor ya integrada.
  • Acceso (limitado) al sistema operativo y sistema de ficheros.
2.2.7 WSL

Si estamos trabajando en un sistema Windows 10 es posible que nos encontremos más cómodos usando una terminal tipo «Linux», entre otras cosas para poder usar con facilidad las herramientas vistas en esta sección y preparar el entorno de desarrollo Python. Durante mucho tiempo esto fue difícil de conseguir hasta que Microsoft sacó WSL.

WSL nos proporciona una consola con entorno Linux que podemos utilizar en nuestro Windows 10 sin necesidad de instalar una máquina virtual o crear una partición para un Linux nativo. Es importante también saber que existen dos versiones de WSL hoy en día: WSL y WSL2. La segunda es bastante reciente (publicada a mediados de 2019), tiene mejor rendimiento y se adhiere más al comportamiento de un Linux nativo.

Para la instalación de WSL hay que seguir los siguientes pasos:

1.Lanzamos Powershell con permisos de administrador.

2. Activamos la característica de WSL:

3. Descargamos la imagen de Ubuntu 20.04 que usaremos:

2.2 Contexto real

4. Finalmente, la instalamos:

2.2 Contexto real

En este punto, WSL debería estar instalado correctamente, y debería también aparecer en el menú Inicio.

Publicaciones Similares