🤩 Как отслеживать прогресс цикла в Python — от простых print до tqdm:
Многие новички (и не только) в Python сталкиваются с длинными циклами — например, при обработке больших данных или вычислениях.
Возникает вопрос — завис ли процесс? Можно, конечно, проставлять print с номером итерации, но это примитивно и неудобно.
Есть крутое решение — библиотека tqdm, которая добавляет стильный прогресс-бар.
Представим, что у нас есть список из 100 элементов, и мы хотим мониторить цикл for.
1️⃣ Простой способ — print с номером итерации:
import time # Для имитации задержки
items = range(100) # 100 элементов
for i in items:
print(f"Обработка элемента {i}") # Выводит номер каждый раз
time.sleep(0.1) # Имитация работы
Это базовый вариант — вставляем print внутри цикла, чтобы видеть, на каком шаге мы. Полезно для отладки, но консоль быстро замусоривается, и нет информации о времени или скорости.
2️⃣ Лучшее решение — библиотека tqdm:
import time # Для имитации задержки
from tqdm import tqdm # Импортируем tqdm
items = range(100) # 100 элементов
for item in tqdm(items, desc="Обработка элементов"):
time.sleep(0.1) # Имитация работы (0.1 секунды на итерацию)
print("Цикл завершён!")
Tqdm — это лёгкая библиотека, которая оборачивает ваш цикл в прогресс-бар с процентами, скоростью (итераций в секунду) и временем до завершения.
Устанавливается просто:
pip install tqdm
3️⃣ Как работает? При запуске в консоли появляется прогресс-бар вроде:
Обработка элементов: 42%|████▏ | 42/100 [00:04<00:06, 9.50it/s]
Итог:
Если цикл короткий — хватит print. Но для серьёзных задач используйте tqdm.
🍸 Если вы нашли пост для себя полезным, то накидывайте реакций, чтобы я понимал, что вам эта тема интересна!
❤️Поддержать канал бустами, чтобы у автора появился дополнительный функционал можно - здесь (это бесплатно и доступно с подпиской telegram premium)
❓ А вы отслеживаете прогресс в Python-циклах? Использовали tqdm или другие библиотеки? Делитесь в комментариях!
✔️ Подпишитесь на канал, чтобы не пропустить следующие посты.
Сделал сайт - оцените:
🚬 Вопросы, обучение, консультации