Logo
TGCATALOG
Каталог Подборки Блог
PYTHON:TODAY - скрипты

PYTHON:TODAY - скрипты

Python-скрипты, нейросети, боты и автоматизация задач бесплатно.

Нет оценок
177
10.09.2026
177
10.09.2026
Нет оценок
177
10.09.2026
Безопасный переход через бот
О канале

Python-скрипты, нейросети, боты и автоматизация задач бесплатно.

Подписчиков 63,833
Тематика IT
Язык Русский
Ссылка t.me/python2day
Описание

[PYTHON:TODAY] - канал с готовыми Python-скриптами, ботами, материалами по нейросетям и автоматизации. Всё для разработчиков доступно бесплатно в Telegram.

Последние посты

PYTHON:TODAY - скрипты
PYTHON:TODAY - скрипты
🔒Открыть пост
и посмотреть медиа
🐍 Логирование в Python. Объясняем на пальцах с примерами кода. Если в вашем проекте повсюду такое: print("сюда дошли") print("что-то сломалось") print(user) пора познакомиться со стандартным модулем logging. Уже встроен в Python — устанавливать ничего не нужно. 🔣Самый простой вариант import logging logging.basicConfig(level=logging.INFO) logging.debug("Отладочная информация") logging.info("Приложение запущено") logging.warning("Что-то подозрительное") logging.error("Произошла ошибка") logging.critical("Критическая ошибка") В Python есть стандартные уровни логирования: DEBUG 10 INFO 20 WARNING 30 ERROR 40 CRITICAL 50 Чем выше число — тем серьёзнее событие. Если уровень установлен в INFO, сообщения DEBUG выводиться не будут. А если вообще ничего не настраивать, стандартный порог — WARNING. 🛠 Нормальная настройка import logging logging.basicConfig( level=logging.INFO, format="%(asctime)s | %(levelname)s | %(name)s | %(message)s" ) logger = logging.getLogger(__name__) logger.info("Приложение запущено") Получаем примерно: 2026-08-25 14:30:15,123 | INFO | __main__ | Приложение запущено Использование logger = logging.getLogger(__name__) — рекомендуемый подход: имя логгера автоматически соответствует имени текущего модуля, а логгеры образуют иерархию модулей приложения. 💾 Записываем логи в файл logging.basicConfig( filename="app.log", encoding="utf-8", level=logging.INFO, format="%(asctime)s | %(levelname)s | %(message)s" ) Теперь сообщения будут попадать в: app.log Параметр encoding у basicConfig() поддерживается начиная с Python 3.9. 🚨 Как правильно логировать исключения Вот здесь особенно полезен: logger.exception() Например: try: result = 10 / 0 except ZeroDivisionError: logger.exception("Не удалось выполнить вычисление") В лог попадёт не только сообщение, но и traceback исключения. Поэтому внутри except зачастую гораздо полезнее: logger.exception("Ошибка обработки заказа") чем просто: logger.error("Ошибка") 💀 Не делайте так logger.info(f"Пользователь {user_id} вошёл") Для логирования переменных предпочтительнее: logger.info("Пользователь %s вошёл", user_id) Почему? logging откладывает форматирование сообщения до момента, когда оно действительно понадобится. Если запись отфильтруется уровнем логирования, ненужного форматирования можно избежать. 📂 А если нужны одновременно консоль и файл? Тут появляются Handlers: import logging logger = logging.getLogger(__name__) logger.setLevel(logging.DEBUG) formatter = logging.Formatter( "%(asctime)s | %(levelname)s | %(name)s | %(message)s" ) console = logging.StreamHandler() console.setLevel(logging.INFO) console.setFormatter(formatter) file = logging.FileHandler( "app.log", encoding="utf-8" ) file.setLevel(logging.DEBUG) file.setFormatter(formatter) logger.addHandler(console) logger.addHandler(file) Получаем: консоль INFO WARNING ERROR CRITICAL app.log DEBUG INFO WARNING ERROR CRITICAL И это одна из главных возможностей logging: Logger создаёт события, Handler определяет, куда их отправлять, Formatter — как они будут выглядеть, а Filter позволяет дополнительно фильтровать записи. Причём стандартная библиотека умеет отправлять логи не только в консоль или файл. Есть обработчики для очередей, сокетов, Syslog, SMTP и других направлений. 🧠 Запоминаем DEBUG → подробности для отладки INFO → нормальная работа программы WARNING → что-то пошло не совсем так ERROR → операция не выполнена CRITICAL → серьёзная проблема приложения Для маленького скрипта иногда достаточно print(). Но как только появляется бот, API, парсер, сервер, база данных, фоновые задачи или большой проект, нормальные логи экономят огромное количество времени при поиске ошибок. И главное — для базового логирования не нужна ни одна сторонняя библиотека. Всё уже есть в стандартной библиотеке Python. 📌 Сохраняем — пригодится в проекте. #cheatsheet #python #doc
PYTHON:TODAY - скрипты
Динамика подписчиков
+0.0% за 30 дней
Текущие
63,833
Месяц назад
63,850
Средний рост
+-1 / день
Обновлено
19 часов назад

Отзывы о канале PYTHON:TODAY - скрипты

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Канал о BMW: новости, фото, видео, тюнинг и советы для владельцев.

Канал

Портал ссылок на все чаты и каналы #TeamFiles.

Канал

DAO сообщество WTF для совместного управления активами, голосований и децентрализованных инициатив в крипто.

Канал
Переход на светлую тему
Главная Каталог Подборки Блог Вход