Uso de la herramienta de gestión de dependencias de poesía en Python

En este artículo, vamos a estudiar la herramienta de administración de dependencias de poesía en python que lo ayudará a administrar las bibliotecas de su próximo proyecto para que sea fácil de descargar, instalar y configurar su proyecto.

que es la poesia

Poetry es una herramienta de administración de dependencias de Python para administrar dependencias, paquetes y bibliotecas en su proyecto de Python. Le ayudará a simplificar su proyecto al resolver las complejidades de dependencia en su proyecto y administrar la instalación y actualización por usted. Para resolver situaciones complicadas, Poetry viene aquí con un solo archivo pyproject.toml para administrar todas las dependencias. En otras palabras, la poesía usa pyproject.toml para reemplazar setup.py, requirements.txt, setup.cfg, MANIFEST.in y Pipfile.

caracteristicas de la poesia

  • Herramienta de gestión de dependencias.
  • Simplifica el proyecto al resolver las complejidades de las dependencias.
  • La poesía nos ayudará a estructurar nuestro proyecto
  • Comandos para administrar, configurar, ejecutar e implementar un proyecto

Ventajas de la poesía

  • El administrador tiene control total sobre las dependencias (archivo de dependencia bloqueado, sin actualizaciones automáticas)
  • Mantener la versión de dependencia compatible con el proyecto.
  • Fácil de instalar y configurar un nuevo entorno virtual.
  • Estructura de archivos sencilla.
  • Fácil de agregar una nueva dependencia a un proyecto.
  • Metadatos de proyecto comprensibles y de fácil acceso desde pyproject.toml

Instalación de poesía:

En Linux/bash en Windows:

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python –

En Windows PowerShell

(Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python –

usando pip

Para instalar poesía en su sistema local. También puede instalarlo usando pip, que no es un método recomendado.

pip install poetry

Para verificar si la poesía está instalada o no:

poetry --version

Activando entorno virtual

Poetry crea su propio entorno virtual en el momento de la instalación para que no interfiera con otros programas en su sistema. Puede usarlo como un entorno virtual que estará presente en el directorio de su proyecto {cache-dir}/virtualenvs}. Para activar el entorno virtual en su proyecto, simplemente necesita escribir este comando:

poetry shell

Esto creará un nuevo entorno de shell si no lo desea, simplemente puede activarlo en su propia terminal usando el siguiente comando:

para linux

source {path_to_venv}/bin/activate

Para ventanas

source {path_to_venv}\Scripts\activate.bat

Para desactivar el entorno virtual puede utilizar un comando.

exit

Comenzando un nuevo proyecto:

Para crear un nuevo proyecto puedes usar el siguiente comando:

poetry new new-project

Esto creará un nuevo proyecto con el nombre nuevo proyecto, puede nombrarlo como desee. Esto creará un nuevo directorio con el nombre nuevo proyecto y la estructura del directorio dentro del nuevo proyecto será así:

Poetry Dependency Management tool in Python

 

La estructura del proyecto es así.

  • pyproject.toml: es el archivo más importante que contiene los metadatos del proyecto y otra información, como las dependencias del proyecto y las dependencias del desarrollador con sus versiones. A medida que agregamos nuevas dependencias a nuestro proyecto, se agrega aquí. Este archivo no debe editarse explícitamente.
  • README.rst: es un archivo que puede ser editado por el administrador del proyecto y debe contener información sobre qué es este proyecto y cómo usarlo, etc.
  • pruebas: la carpeta contiene pruebas unitarias relacionadas con diferentes unidades/funciones del programa.
  • La carpeta del proyecto contiene otra carpeta con el mismo nombre que el directorio principal que contiene archivos de código del programa.

Adición de nuevas dependencias

Para agregar un nuevo módulo a su proyecto, puede usar el siguiente comando, es decir, si queremos agregar dos nuevos módulos, a saber, pygame y pyautogui, a nuestro proyecto, simplemente podemos usar estos comandos para agregarlos a nuestro proyecto.

$ poetry add pygame
$poetry add pyautogui

Esto los agregará en su pyproject.toml con la última versión. Después de esto, su pyproject.toml debería verse así:

Poetry Dependency Management tool in Python

 

Instalación de dependencias

Ahora, si está utilizando otros proyectos que utilizan poesía como sistema de gestión, deberá ejecutar este comando e instalará todas las dependencias necesarias. Esto debería iniciar el proceso de instalación e instalarlos todos con la versión especificada.

$ poetry install

Ejecutar secuencias de comandos de Python

Hemos creado un archivo main.py simple dentro del proyecto, ahora ejecute sus scripts de python usando el siguiente comando a continuación:

$ poetry run python new_project/main.py

Ejemplo 1:

Cree un nuevo archivo con main.py.

Python3

# where main.py contains
print("Hello World")

 Producción:

Poetry Dependency Management tool in Python

principal.py

Ejemplo 2: 

En este programa vamos a usar varias dependencias que son tiempo y capas para agregar esas dependencias a nuestro proyecto, simplemente use los siguientes comandos:

$ poetry add plyer datetime

Cree un nuevo archivo con notifier.py.

Python3

from plyer import notification
import time
  
def inputtime():
    hour = int(input("hours of interval :"))
    minutes = int(input("Mins of interval :"))
    seconds = int(input("Secs of interval :"))
    time_interval = seconds+(minutes*60)+(hour*3600)
    return time_interval
  
def notify():
    notification.notify(
        title = "Time is Up",
        message="Enter description here" ,
             
        timeout=5
    )
  
if __name__ == '__main__':
    time_interval = inputtime()
    time.sleep(time_interval)
    notify()

Ejecute el programa

$ poetry run python notifier/notifier.py

Producción:

Poetry Dependency Management tool in Python

notificador.py

 

Publicación traducida automáticamente

Artículo escrito por adityasangave21 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *