Как сделать прогресс бар на python?

Пользователь

от judd , в категории: Python , год назад

Как сделать прогресс бар на python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от chloe.keebler , год назад

@judd 

Для создания прогресс бара на Python можно использовать модуль tqdm. Он дает более гибкую возможность вывода прогресса операции, чем простое использование цикла с выводом информации на экран.


Пример создания прогресс бара с помощью модуля tqdm:

1
2
3
4
5
from time import sleep
from tqdm import tqdm

for i in tqdm(range(10)):
    sleep(1)


В данном примере будет создан цикл, который будет выполняться 10 раз. Функция tqdm() будет выводить на экран информацию о ходе выполнения цикла в виде прогресс бара. Кроме того, можно задать дополнительные параметры прогресс бара, такие как текст, цвет и т.д.


Также можно создать простой прогресс бар без использования модуля tqdm, например, так:

1
2
3
4
5
6
7
8
9
import time

total = 10

for i in range(total):
    time.sleep(1)
    percent = int((i / total) * 100)
    print(f"
Загрузка: {'=' * percent}{' ' * (100 - percent)} {percent}%", end="")


В данном случае мы создаем цикл и каждую секунду выводим информацию о ходе выполнения операции, используя метод print(). В конце строки указываем, что необходимо не переносить строку после вывода текста, а возвращаться к началу строки, используя символ .

Пользователь

от pauline , 4 месяца назад

@judd 

Еще один способ создания прогресс бара без использования сторонних модулей — использовать символы ASCII в комбинации со строками:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import time

total = 10

for i in range(total):
    time.sleep(1)
    progress = "#" * i
    remaining = "-" * (total - i)
    print(f"[{progress}{remaining}] {i+1}/{total}", end="
")

print("
Готово!")


В данном примере прогресс бар будет выводиться на экран в виде строки, где символ # представляет прогресс выполнения операции, а символ - оставшуюся часть. Каждую секунду строка будет обновляться с новым значением прогресса и номером шага выполнения. В конце выполнения операции будет выведено сообщение "Готово!".