Автор оригинала: Team Python Pool.
Python Tqdm: Сделать Индикатор Прогресса Легким
Это доказанный факт, что мы,<сильные> люди, любим визуальные эффекты и понимаем их лучше, чем что-либо другое. То же самое происходит, когда мы работаем с большими наборами данных и выполняем работу по обработке. Если вы знаете глубокое обучение, вы согласитесь со мной, как это скучно, когда мы не знаем, сколько времени потребуется для построения нашей модели. Но предположим, что если у нас есть некоторые индикаторы прогресса, которые показывают нам, сколько прогресса мы достигли и сколько времени осталось, разве это не было бы здорово? Да, это возможно. Возможно, если мы используем библиотеку tdm в python.
Используя библиотеку tqdm, мы можем создавать консольные линейные индикаторы прогресса и индикаторы прогресса с графическим интерфейсом. Используя эти индикаторы прогресса, мы можем увидеть, не застряли ли мы где-нибудь, и немедленно поработать над этим. Кроме того, когда мы знаем, сколько времени нам потребуется для выполнения задачи, мы можем дать нашим клиентам фактическое время для доставки.
Установка и использование Python tqdm
Дело не в том, что tqdm-это единственный способ создания индикаторов прогресса в python, есть и много других методов. Но работать с tqdm намного проще, чем со многими из них. Чтобы использовать его, нам сначала нужно установить его.
Для его установки используйте – pip install tqdm
В tdm есть несколько параметров; давайте разберемся в них по одному.
Параметры в Python Tqdm
Iterable– Это может быть диапазон, список, ход которого мы должны проверить.
Пример-
#Importing tqdm function of tqdm module from tqdm import tqdm from time import sleep for i in tqdm(range(200)): # Waiting for 0.01 sec before next execution sleep(.01)
Выход-
100%|██████████| 200/200 [00:02<00:00, 94.85it/s]
Приведенные выше результаты показывают, что в общей сложности 200 итераций выполнялись со скоростью 94,85 итерации в секунду. Общее время составляло ок. 2 секунды.
desc: Используя этот параметр, мы можем указать текст, который хотим показать перед индикатором выполнения.
например-
from tqdm import tqdm for i in tqdm(range(int(5000000)),): pass
Выход-
Progress: 100%|██████████| 5000000/5000000 [00:01<00:00, 4389678.95it/s]
Приведенный выше вывод показывает, что 5000000 итераций произошли со скоростью 4389678,95 ит/с.
Disable:- Если нам не нужно показывать индикатор выполнения, мы можем установить. По умолчанию значение disable равно False.
for i in tqdm(range(0, 100),): sleep(.01) print("Done")
Output- Done
Чтобы лучше понять этот параметр, мы попытаемся дать ему два различных аргумента. Выход- ascii: Используя этот параметр, мы можем дать любое значение в индикаторе выполнения. Вы лучше поймете это на примере. Выход- Выход- Вы также можете сделать индикатор выполнения с графическим интерфейсом, который, несомненно, поможет вам лучше понять ход выполнения. Библиотека Python tqdm имеет отдельную функцию ‘tqdm_gui’ для этой задачи с почти той же функцией, только с разными именами и href=”https://en.wikipedia.org/wiki/Interface_(вычисление)”>Интерфейс. href=”https://en.wikipedia.org/wiki/Interface_(вычисление)”>Интерфейс. Выход- Мы обсудили почти все, что вам понадобится, чтобы использовать python tqdm в реальной жизни. Мы использовали его для диапазонов, списков и фреймов данных. Попробуйте исследовать больше, используя его на файлах. Попробуйте запустить программы на вашей стороне и дайте нам знать, если у вас есть какие-либо вопросы. Счастливого кодирования!from tqdm import tqdm
from time import sleep
for i in tqdm(range(0,):
sleep(.1)
100%|█████████████████████████████████████████████████████████████| 100/100 [00:10<00:00, 9.94it/s]
from tqdm import tqdm
from time import sleep
for i in tqdm(range(0,):
sleep(.1)
100%|███████████| 100/100 [00:10<00:00, 9.95it/s]
from tqdm import tqdm
from time import sleep
for i in tqdm(range(0,):
sleep(.1)
100%|**********| 100/100 [00:10<00:00, 9.95it/s]
Примеры Python tqdm с использованием понимания списка
from time import sleep
from tqdm import tqdm
list1 = ["My","Name","Is","Ashwini","Mandani"]
# loop through the list and wait for 2 seconds before execution of next
list1 = [(sleep(2), print(i)) for i in tqdm(list1)]
20%|██ | 1/5 [00:02<00:08, 2.00s/it]My
40%|████ | 2/5 [00:04<00:06, 2.00s/it]Name
60%|██████ | 3/5 [00:06<00:04, 2.00s/it]Is
80%|████████ | 4/5 [00:08<00:02, 2.00s/it]Ashwini
100%|██████████| 5/5 [00:10<00:00, 2.00s/it]Mandani
Python tqdm С графическим интерфейсом
from time import sleep
# Install tdgm_gui from tqdm instead of just tqdm
from tqdm import tqdm_gui
list1 = ["My","Name","Is","Ashwini","Mandani"]
# Use tqdm_gui
list1 = [(sleep(2), print(i)) for i in tqdm_gui(list1)]
Интеграция фрейма данных Pandas и Python tqdm
import pandas as pd
import numpy as np
from tqdm import tqdm
# Creating random dataset.DataFrame(np.random.randint(0, 100, (10, 6)))
)
# Now you can use `progress_apply` instead of `apply`
# and `progress_map` instead of `map`
dataset.progress_apply(lambda x: x**2)
progress bar: 100% ████████████████████████████████████████████████████████████████████| 6/6 [00:00<00:00, 2006.20it/s]
0 1 2 3 4 5 0 8649 1764 9801 9801 3364 9 1 2209 9 7396 5929 8464 25 2 6561 441 100 1521 2916 169 3 6084 121 784 9801 7744 1296 4 7396 1 2500 81 100 7569 5 4761 4624 7056 121 25 6400 6 225 5476 6241 3249 196 7744 7 2401 4489 5625 676 36 6724 8 25 2809 4489 1369 729 8464 9 64 9801 2209 900 1225 4225 Должен Читать
Вывод-