Utilidades para entrada y salida en consola
Project description
eii_utils
Utilidades para entrada y salida en aplicaciones de consola Python.
Incluye:
- Lectura segura de enteros, flotantes, texto y booleanos.
- Lectura con validacion de rangos.
- Lecturas opcionales para flujos de edicion.
- Menus numerados reutilizables.
- Impresion de titulos decorados y mensajes con color.
- Pausa de ejecucion por ENTER.
Instalacion
pip install eii_utilitario
API publica
Salidas
from eii_utils import (
limpiar_consola,
generar_titulo_decorado,
imprimir_titulo_decorado,
imprimir_mensaje,
imprimir_error,
imprimir_advertencia,
imprimir_echo,
pausar,
)
limpiar_consola()
# Nuevo: genera contenido como string (util para archivos de texto)
titulo = generar_titulo_decorado("Sistema de ventas ACME", 60)
print(titulo)
# Compatible: sigue imprimiendo en consola
imprimir_titulo_decorado("Menu principal", 60)
imprimir_mensaje("Operacion exitosa")
imprimir_mensaje("No se pudo guardar", es_error=True)
imprimir_error("Debe ingresar un numero entero valido.")
imprimir_advertencia("El texto es obligatorio y no puede estar vacio.")
imprimir_echo("Edad", 25)
pausar() # Muestra: Digite <ENTER> para continuar...
Entradas
from eii_utils import (
leer_entero,
leer_flotante,
leer_texto,
leer_booleano,
leer_rango_enteros,
leer_rango_flotante,
leer_entero_opcional,
leer_flotante_opcional,
leer_booleano_opcional,
leer_texto_opcional,
)
edad = leer_entero("Edad")
salario = leer_flotante("Salario")
nombre = leer_texto("Nombre", es_obligatorio=True)
activo = leer_booleano("Activo")
nota = leer_rango_enteros("Nota", 0, 100)
porcentaje = leer_rango_flotante("Porcentaje", 0.0, 100.0)
# Lecturas opcionales (si se presiona ENTER, conserva valor_actual)
edad = leer_entero_opcional("Edad", edad)
salario = leer_flotante_opcional("Salario", salario)
activo = leer_booleano_opcional("Activo", activo)
nombre = leer_texto_opcional("Nombre", nombre)
Menus
from eii_utils import mostrar_menu
opcion = mostrar_menu(
titulo_menu="Menu principal",
opciones=[
"Agregar producto",
"Modificar producto",
"Eliminar producto",
"Listar producto",
"Ver producto",
],
etiqueta_salir="Salir", # opcion 0 (por defecto)
)
print(f"Opcion elegida: {opcion}")
Ejemplo integrado
from eii_utils import (
limpiar_consola,
imprimir_titulo_decorado,
mostrar_menu,
leer_texto,
imprimir_mensaje,
pausar,
)
while True:
limpiar_consola()
imprimir_titulo_decorado("Sistema de ventas ACME", 60)
print()
opcion = mostrar_menu(
"Menu principal",
[
"Agregar producto",
"Modificar producto",
"Eliminar producto",
"Listar producto",
"Ver producto",
],
)
if opcion == 0:
break
if opcion == 1:
nombre = leer_texto("Nombre del producto")
imprimir_mensaje(f"Producto agregado: {nombre}")
pausar()
Publicar en PyPI
- Actualiza la version en pyproject.toml.
- Genera artefactos:
python -m pip install --upgrade build twine
python -m build
- Verifica artefactos:
twine check dist/*
- Sube a PyPI:
twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
eii_utilitario-0.1.2.tar.gz
(5.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file eii_utilitario-0.1.2.tar.gz.
File metadata
- Download URL: eii_utilitario-0.1.2.tar.gz
- Upload date:
- Size: 5.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9fe0d0a91d30b950fe701e52192591ca87b2ea1fcd2e38f087c44561d720a71
|
|
| MD5 |
a758d2447b466fea0db052ba966c19b4
|
|
| BLAKE2b-256 |
701a3ffecb82f62d88d03ad49349a556b39efcd631a5fc20188748327c52bb95
|
File details
Details for the file eii_utilitario-0.1.2-py3-none-any.whl.
File metadata
- Download URL: eii_utilitario-0.1.2-py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
815b5bd3fb3b4537cfa952d548f3781f4d0667450df7a005965300aa0fefe282
|
|
| MD5 |
adffccea6f59803e8f38d31ede7a8016
|
|
| BLAKE2b-256 |
bddcbf38f10e5006b7467d82819b47c10835b755c5ef298c71fa7c1c5de0737d
|