Вы можете завершить строку оператора печати с помощью возврата каретки \r
, чтобы перезаписать текущую строку, и использовать ее для постоянного «обновления» индикатора выполнения.
Пример печати индикатора выполнения:
import time
def progress_bar(progress, total=100, bar_length=20):
# How much of the bar should be filled
fill = progress * bar_length // total
# How much of the bar should be empty
empty = bar_length - fill
print(f'[{"#"*fill}{"-"*empty}]', end='\r')
# Go to next line if done
if progress == total:
print()
# Emulate a percentage progress
for i in range(0, 101):
progress_bar(i)
time.sleep(0.05)
Это выведет полосу, которая выглядит следующим образом
[##############------]