tqdm: Barre di Avanzamento che Rendono Python Professionale
tqdm: Barre di Avanzamento che Rendono Python Professionale
Quando usarlo
Hai script che elaborano migliaia di file, scaricano dati, o fanno calcoli lunghi? Le barre di avanzamento di tqdm
tengono informati gli utenti sui progressi, evitano la frustrazione del “si è bloccato?” e rendono i tuoi script più professionali e user-friendly.
Snippet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from tqdm import tqdm
import time
# Barra semplice per loop
for i in tqdm(range(1000), desc="Elaborando"):
time.sleep(0.001) # simula lavoro
# Con liste esistenti
file_list = ["file1.txt", "file2.txt", "file3.txt"]
for file in tqdm(file_list, desc="Processando file"):
# elabora file
time.sleep(0.5)
# Controllo manuale
with tqdm(total=100, desc="Download") as pbar:
for chunk in range(10):
time.sleep(0.1)
pbar.update(10) # avanza di 10
Perché funziona
tqdm
(dall’arabo “taqaddum” = progresso) è incredibilmente semplice: avvolgi qualsiasi iterabile con tqdm()
e ottieni automaticamente una barra di progresso. Calcola velocità, tempo rimanente, e si adatta a terminali di diverse dimensioni. Non rallenta il codice e funziona anche in Jupyter notebook.
Attenzione a…
- Non usare
tqdm
con iteratori infiniti senza specificaretotal
- In Jupyter, usa
from tqdm.notebook import tqdm
per barre migliori - Evita di stampare durante loop con tqdm - interferisce con la visualizzazione
Vedi anche
rich.progress
per barre più sofisticateclick.progressbar()
per CLI avanzate- Documentazione tqdm
This post is licensed under CC BY 4.0 by the author.