Biblioteca de Python para crear aplicaciones CLI a partir de anotaciones de tipos estándar, con ayuda, validación y autocompletado de shell automáticos.
tqdm/tqdm
Una barra de progreso rápida y extensible para bucles, iterables y tuberías de línea de comandos en Python.
- Estrellas
- 31,359
- Forks
- 4,084
- Issues abiertos
- 665
- Último commit
- hace 16 días
¿Qué es?
tqdm envuelve cualquier iterable de Python con un indicador de progreso que muestra el porcentaje, la velocidad de iteración y el tiempo restante estimado. Se puede usar como una sola línea alrededor de un bucle, como actualizador manual dentro de un bloque `with` o como módulo entre tuberías del shell para supervisar el flujo de datos.
La biblioteca no requiere dependencias y funciona en Linux, Windows, macOS y otras plataformas, tanto en terminales y GUIs como en notebooks de Jupyter. Sus submódulos especializados ofrecen widgets para notebooks, interfaces para Tkinter y Matplotlib, salida enriquecida, compatibilidad con asyncio e integraciones con pandas, Keras y Dask. El paquete tqdm.contrib añade utilidades para concurrent.futures e itertools, así como para enviar el progreso a bots de Slack, Discord o Telegram.
El formato de la barra se puede personalizar mediante bar_format, y se admiten barras anidadas para bucles de varios niveles y workers de multiprocessing o con hilos.
Funciones clave
- 01Envuelve cualquier iterable con una barra de progreso de una sola línea.
- 02Muestra automáticamente el tiempo estimado restante, la velocidad de iteración y el porcentaje.
- 03Funciona como filtro en tuberías del shell, con opciones de escalado de bytes y unidades.
- 04Admite barras anidadas para bucles de varios niveles y multiprocessing.
- 05Ofrece interfaces para notebooks, GUIs, salida enriquecida y asyncio.
- 06Se integra con pandas, Keras y Dask.
Casos de uso
- Mostrar el progreso de bucles de procesamiento de datos de larga duración en scripts de Python.
- Supervisar copias de archivos o copias de seguridad en una tubería del shell.
- Seguir descargas o subidas envolviendo métodos de lectura y escritura.
- Mostrar el progreso de tareas paralelas en notebooks de Jupyter.
Inicio rápido
- 1
Instala tqdm desde PyPI
pip install tqdm - 2
Envuelve cualquier iterable con tqdm() en tu bucle
Antes de usarlo
- La licencia no se detecta automáticamente, así que revisa las condiciones de licencia del repositorio antes de usarlo.
- Las barras de progreso anidadas necesitan una consola que permita mover el cursor hacia arriba. Algunas consolas, como IDLE y PyCharm, no ofrecen compatibilidad completa.
Temas
Preguntas frecuentes
- ¿Qué es tqdm?
- Una barra de progreso rápida y extensible para bucles, iterables y tuberías de línea de comandos en Python. tqdm envuelve cualquier iterable de Python con un indicador de progreso que muestra el porcentaje, la velocidad de iteración y el tiempo restante estimado. Se puede usar como una sola línea alrededor de un bucle, como actualizador manual dentro de un bloque `with` o como módulo entre tuberías del shell para supervisar el flujo de datos.
- ¿tqdm es gratuito? ¿Qué licencia tiene?
- tqdm es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿tqdm sigue mantenido?
- Mantenimiento activo. El último commit de tqdm fue el 5 oct 2026.
- ¿Para qué puedo usar tqdm?
- Mostrar el progreso de bucles de procesamiento de datos de larga duración en scripts de Python. Supervisar copias de archivos o copias de seguridad en una tubería del shell. Seguir descargas o subidas envolviendo métodos de lectura y escritura. Mostrar el progreso de tareas paralelas en notebooks de Jupyter.
- ¿Cómo se instala tqdm?
- Instala tqdm desde PyPI: pip install tqdm Envuelve cualquier iterable con tqdm() en tu bucle
- ¿Dónde consigo tqdm?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/tqdm/tqdm
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un visor de logs para la línea de comandos que convierte logs JSON y logfmt en texto legible, con filtros, ordenación y seguimiento en tiempo real.
Una pequeña herramienta de línea de comandos en Go que colorea, filtra y reformatea logs en formato logfmt recibidos por stdin en la terminal.
Monitor de sistema multiplataforma para terminal y web que muestra CPU, memoria, disco, red, procesos y contenedores, con API REST y exportación de datos.
Asistente de programación de código abierto de Mistral para la línea de comandos, que permite explorar y editar bases de código en lenguaje natural desde la terminal.
Un administrador de archivos de terminal basado en texto, similar a un shell, que permite gestionar archivos mediante comandos en lugar de una TUI o GUI.