IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     09.08.2023       Выпуск 503 (07.08.2023 - 13.08.2023)       Статьи

Менеджеры контекста в Python

Почти десять лет назад я показал краткое введение в менеджеры контекста (пункт 2 здесь) и думал, что стану активнее пользоваться такими менеджерами. Но вспомнил я о них только недавно, на фоне того, как много мне приходилось перенастраивать и очищать тестируемый код при опытах по параллелизму (код получался одновременно неприятным и некрасивым).

     09.08.2023       Выпуск 503 (07.08.2023 - 13.08.2023)       Статьи
     09.08.2023       Выпуск 503 (07.08.2023 - 13.08.2023)       Статьи

5 способов запустить Python скрипт не на локальной машине (для новичка)

Не являюсь разработчиком и когда набросал простой скрипт для личных целей, задался вопросом: «Как запустить код не на своем компьютере?». Самые частые ответы в поисковике были про сервер и Docker. В результате забил гвоздь микроскопом. Для специалистов с опытом статья наверное не имеет ценности, но новичкам надеюсь поможет сориентироваться и не потратить много часов на поиск информации и не совершить моих ошибок.

     07.08.2023       Выпуск 503 (07.08.2023 - 13.08.2023)       Статьи

DTO в Python. Способы реализации

Основной целью DTO является упрощение коммуникации между слоями приложения, особенно при передаче данных через различные граничные интерфейсы, такие как веб-сервисы, REST API, брокеры сообщений или другие механизмы удаленного взаимодействия. На пути к обмену информацией с другими системами, важно минимизировать лишние расходы, такие как избыточное сериализация/десериализация, а также обеспечить четкую структуру данных, представляющую определенный контракт между отправителем и получателем.

 

     07.08.2023       Выпуск 503 (07.08.2023 - 13.08.2023)       Статьи

Использование речевых технологий Яндекса на примере аудиосообщений Telegram или чат-бот для распознавания аудиосообщений

В данной статье мы рассмотрим применение речевых технологий, предоставленных компанией Яндекс в контексте распознавания аудиосообщений в Telegram – популярном мессенджере, объединяющем миллионы пользователей по всему миру. Давайте создадим чат-бот для Телеграм, который будет присылать нам текстовую расшифровку аудиосообщения.

     05.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

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

Прочитав статью, вы узнаете, как можно прогнозировать погоду с точностью до двух градусов на 3 месяца вперед, причем здесь преобразование Фурье и машинное обучение

     05.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Как работают select_related и prefetch_related в Django

Часто определение разницы между select_related и prefetch_related звучит как “первый для ForeignKey полей, второй для ManyToMany”, однако это описание не раскрывает суть работы этих методов.

     04.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Быстрый сбор метрик тестов и отображение в Grafana

Ваши автотесты интегрированы в CI и рядом лежит TMS (Test Management System), такие как Allure, qase, и так далее, где вы/ваша команда храните тест-кейсы, чек листы и результаты прогонов. По результатам тестирования строятся графики, рисуются цифры и так далее.

     04.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Широка, необъятна, интерактивна: оффлайн карта России с Plotly

Сегодня создание интерактивной карты на python не составляет большого труда: стоит подключить библиотеку (например, Folium или Bokeh), указать картографический сервер, и после выполнения нескольких «магических» строк кода ваши данные как на ладони! Но что делать, если данные есть, визуализировать их хочется, а в сети, в которой вы работаете, нет доступа к картографическим серверам?

     03.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Как Python упрощает жизнь тестировщикам КОМПАС-3D

В статье вы сможете узнать как при минимальных усилиях, с минимальным знанием Python облегчить тестирование, а также ускорить тесты, автоматизировать повторяющиеся действия и избавиться от лишней информации. 

     03.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Быстрые дашборды на Python с помощью DashExpress

Эта статья для тех, кто ищет простой и быстрый способ делать полноценные дашборды на python и ad-hoc дашборды прямо в jupiter notebook. А так же для всех, кто интерсуется Plotly Dash.

     02.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram

Telegram-боты — хорошая возможность вписать какую-то важную функциональность в понятную и простую платформу мессенджера. Не нужно думать об отдельном сайте и интерфейсе. Также боты — хорошая возможность для новичков в разработке реализовать свой мини-проект. Идея может быть как совершенно фановая — например, создавать стикеры из мемных сообщений друзей, так и быть частью функциональности сервиса — например, платежной системы.

     02.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Работа со скрипичной диаграммой (Violin Plot) в Seaborn

Скрипичные диаграммы могут эффективно отображать распределение данных, сравнивать различные наборы данных и выявлять аномалии (выбросы) и тенденции. В этой статье мы рассмотрим четыре различных стиля скрипичных диаграмм Seaborn, включая обычную, сгруппированную, горизонтальную и улучшенную версии, и разберемся в случаях их применения, преимуществах и недостатках. Мы также покажем, как улучшить код, чтобы нарисовать индивидуальную скрипичную диаграмму.

     02.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Python кодогенерация — ускоряем strftime / strptime

В первой и второй частях я поделился историей создания python библиотеки convtools (кратко: позволяет декларативно описывать преобразования данных, из которых генерируются python функции, реализующие заданные преобразования), сейчас расскажу об ускорении частных случаев datetime.strptime и datetime.strftime, а также о том интересном, что встретилось в datetime модуле по дороге.

     01.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Самое понятное объяснения CFG Scale в нейросетях. Как эта штука повлияла на появление Stable Diffusion

Вы не поверите, но я уже и разработчиков Kandinsky 2.2 спрашивал, что такое CFG Scale в фундаментальном смысле, и нейронщиков всех мастей, однако так не получил внятного ответа. От обывательских блогов меня вообще теперь тошнит, ибо там одно и то же: параметр CFG Scale увеличивает силу следования подсказке... И все как бы, окей — сами разберемся.

 

     01.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Мы создали большой диалоговый датасет

Те, кто когда-нибудь хотел обучить своего диалогового чат-бота, непременно сталкивались с отсутствием датасетов с адекватными диалогами. В открытом доступе, в основном, лишь наборы комментариев с Пикабу и Хабра, парсинг телеграм чатов, и диалоги из литературы. Мягко говоря, всё это "не очень". Поэтому, мы решили использовать ChatGPT для генерации подходящего датасета.

     01.08.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Большое обновление Propan Framework. Куда дальше?

Пару месяцев назад я рассказал вам о своем фреймворке для работы с различными брокерами сообщений - Propan.

Тезисно повторю: это идейный наследник FastAPI, но для написания асинхронных микросервисов (привет, Kombu). Он настолько облегчает взаимодействие с брокерами сообщений, что данный архитектурный паттерн переходит из разряда

     31.07.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Протоколы в Python

В Python 3.8. появилась новая примечательная возможность — протоколы (protocols). Протоколы — это альтернатива абстрактным базовым классам (abstract base classes, ABC). Они позволяют пользоваться структурной подтипизацией (structural subtyping), то есть — осуществлять проверку совместимости классов исключительно на основе анализа их атрибутов и методов. В этом материале мы поговорим о протоколах в Python и разберём практические примеры работы с ними.

     31.07.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Получаем данные из «Яндекс.Метрики» в электронные таблицы и BI: пошаговая инструкция

Стандартный интерфейс «Яндекс.Метрики» позволяет анализировать данные о посетителях сайта и их поведении достаточно подробно. Тем не менее, для решения задач глубокой аналитики стандартного функционала может оказаться недостаточно. 

К тому же многим аналитикам привычнее и зачастую нужнее проводить аналитику в электронных таблицах (Excel, Google Sheet) или BI. Да, можно выгружать отчеты из «Метрики» сначала в Excel-файлы. Но на таком полуручном режиме оперативной и эффективной аналитики особо не построишь.

     31.07.2023       Выпуск 502 (31.07.2023 - 06.08.2023)       Статьи

Django, RQ и FakeRedis

Я часто в своих проектах использую связку Django + RQ вместо Celery. RQ удобный и максимально простой инструмент среди популярных Task Queue решений в экосистеме Python.