
⏳ Loading... 100% |████████████| Done — ¿Usás la librería correcta para tus barras de progreso?
Las barras de progreso parecen un detalle menor, pero en scripts de ML o procesamiento de datos hacen una diferencia enorme. Acá van las 7 mejores:
1. tqdm — El estándar de facto
for record in tqdm(records, desc="Cleaning"):
process(record)
# Cleaning: 100%|██████| 1000/1000 [00:02<00:00, 457it/s]2. rich — Visual y colorido
for api in track(endpoints, description="Fetching APIs"):
fetch(api)3. alive-progress — Animado y dinámico
with alive_bar(epochs, title="Training") as bar:
train(); bar()4. halo — Spinners para tareas indeterminadas
spinner = Halo(text="Connecting...", spinner="dots")
spinner.start(); connect(); spinner.succeed("Connected")5. ipywidgets — Para Jupyter Notebooks
progress = widgets.IntProgress(value=0, max=100)
display(progress)6. progress — Minimalista y simple
7. click — Integrado en CLIs
💡 Explicación en pocas palabras#
tqdm es la opción segura para la mayoría de los casos: zero config, funciona en terminal y notebook, y tiene muy bajo overhead. rich si querés algo más bonito en una CLI. halo cuando no sabés cuánto va a tardar. ipywidgets si estás en Jupyter. Las demás son para casos específicos.
Más información en el link 👇

