🤯23🤔6❤5👍2
Хотите добиться лучшего объяснения моделей машинного обучения? Нужна хорошая визуализация? Используйте эти Python библиотеки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤1🔥1
Media is too big
VIEW IN TELEGRAM
Логирование – это фиксация состояния вашего приложения в определенный момент времени. Оно позволяет понимать, что система работает как ожидается (и вообще работает), а также облегчает диагностику проблем
Минусы print:
- нет общего формата (дата)
- не ясно какой модуль в каком месте написал информацию, насколько она важна
- нужно выключать/включать, обязательно забудем удалить
- нельзя гибко настроить куда писать (файл/консоль)
Когда уместен print: в очень простых, маленьких приложениях и скриптах.
Чем больше и сложнее приложение тем важнее использовать специальные инструменты логирования
DIWEC = DEBUG - INFO - WARNING - ERROR - CRITICAL
DEBUG – самая подробная информация, нужна только разработчику и только для отладки, например значения переменных, какие данные получены и т.д.
INFO – информационные сообщения, как подтверждение работы, например запуск сервиса
WARNING – еще не ошибка, но уже надо посмотреть - мало места на диске, мало памяти, много созданных объектов и т.д
ERROR – приложение еще работает и может работать, но что-то пошло не так
CRITICAL – приложение не может работать дальше
logger = getLogger(__name__) – принятый подход для логирования с именем модуля
логеры с именами наследуют настройки от root, но могут быть настроены иначе
logger.debug("Get expression %s", exp) – для обратной совместимости используется старый формат через %
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥2
🤯20👍6🔥2
Вместо самостоятельного создания и увеличения переменной, используйте enumerate() для получения одновременно счетчика и значения из итерационной функции.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤1🔥1
Media is too big
VIEW IN TELEGRAM
В видео рассмотрим оператор присваивания, каскадное и множественное присваивание и динамическую типизация.
Также разберем функции
type()
и id(),
как правильно выбирать имена переменных и ограничения на определение имен переменных.Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
🤯32👍20🤔5
pathlib – Этот модуль предлагает классы, представляющие пути файловой системы с семантикой, подходящей для различных операционных систем.
Классы путей делятся между чистыми путями, которые обеспечивают чисто вычислительные операции без ввода-вывода, и конкретными путями, которые наследуют от чистых путей, но также обеспечивают операции ввода-вывода.
Чистые пути полезны в некоторых особых случаях; например:
1. Если вы хотите манипулировать путями Windows на машине Unix (или наоборот). Вы не можете создать экземпляр
WindowsPath
при запуске на Unix, но вы можете создать экземпляр PureWindowsPath
.2. Вы хотите убедиться, что ваш код манипулирует только путями без фактического доступа к ОС. В этом случае создание экземпляров одного из чистых классов может быть полезным, так как они просто не имеют никаких операций доступа к ОС
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤4
Media is too big
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤4🔥2
👍17🤯2❤1
В видеокурсе из семи уроков описывается парсинг сайтов с различной структурой при помощи Python третьей версии, библиотек requests и BeautifulSoup
Раскрываются особенности парсинга многостраничных ресурсов, использования прокси с различными User-Agent, сохранения изображений и распознавания простого текста, а также быстрый мультипроцессорный парсинг сайтов
Автор курса не преследует цели создать идеальный парсер, а лишь излагает определенные концепции и иллюстрирует их примерами
Для облегчения вашей работы, мы привели исходные коды программ, набранные нами во время прохождения курса, с некоторыми поправками
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍6❤5
Media is too big
VIEW IN TELEGRAM
Подробное объяснение работы генераторов списков языка Python.
Рассмотрим примеры, где
применяются List comprehensions.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍6🔥1
👍24🤯7❤3
Сегодня расскажем, как в FastAPI эффективно работать с фоновыми задачами и настроить их мониторинг в Prometheus.
Также будет покажу, как в фоновых задачах использовать асинхронный код.
В статье опишу 5 вариантов: встроенный в FastAPI Background Tasks и 4 библиотеки – ARQ, SAQ, FastStream, адаптированный к асинхронному коду Celery
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
Media is too big
VIEW IN TELEGRAM
В видео узнаете как задавать обычные и многострочные строки в Python. Рассмотрим символ переноса строки.
Соединение (конкатенация) строк, функция
str()
для преобразования аргумента в строку, дублирование строкового фрагментаРазберем функцию
len()
для вычисления длины строки, оператор in
для проверки вхождения подстроки в строку, операторы сравнения строк: ==, !=, больше, меньше, а также рассмотрим функцию ord()
.Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤1🔥1