🤩 Как отслеживать прогресс цикла в 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 или другие библиотеки? Делитесь в комментариях!
✔️ Подпишитесь на канал, чтобы не пропустить следующие посты.

Сделал сайт - оцените:
🚬 Вопросы, обучение, консультации

@@dima_sqlit


Ссылки