In questo articolo vedremo come creare una barra di avanzamento con Python.
Si tratta di definire un segmento di larghezza determinata ponendo a sinistra un carattere di riempimento e a destra la percentuale corrente di avanzamento.
Possiamo implementare la seguente soluzione:
from time import sleep
def progress(percent=0, width=30):
left = width * percent // 100
right = width - left
print('\r[', '#' * left, ' ' * right, ']',
f' {percent: .0f}%', sep='', end='', flush=True)
for i in range(101):
progress(i)
sleep(0.1)
Per simulare un'operazione in svolgimento usiamo in questo caso la funzione sleep()
per fare in modo che la progressione da 0 a 100 non sia immediata. Nella realtà la velocità di avanzamento verrà determinata dal tempo in cui ciascuna operazione nel loop verrà completata.