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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE


Новый материал в ленте
  pyflakes - 4.0.2

Статический анализатор Python-кода. Скачать можно по ссылке: https://pypi.python.org/pypi/pyflakes/


Python Дайджест. Выпуск 668

(28.09.2026 - 04.10.2026)

поделиться выпуском 
Дайджест python,

Статьи

  Один мок — три проблемы

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

  Нейросеть написала PR, тесты зелёные, а поведение изменилось. Как я научил CI это ловить

Модель «упрощает» валидацию. Линтер молчит, тесты проходят, ревьюер видит аккуратный дифф в одну строку и жмёт Approve. Через неделю выясняется, что функция скидки начала принимать отрицательный процент.Тесты в таком PR почти всегда написала та же модель, что и код. Они подтверждают, что модель сделала задуманное, и ничего не говорят о том, ведёт ли себя код так же, как раньше. Я сделал инструмент, который проверяет именно это

  Как ускорить асинхронные генераторы в CPython на 40%, выкинув скрытые исключения

Недавно я гонял бенчмарки на свежей сборке CPython (ветка с tail-call интерпретатором, PGO + LTO, GCC) и снял флеймграф стандартного бенчмарка async_generators из набора pyperformance (рекурсивный обход дерева на 100 000 нод с глубиной вложенности ~17).Картина на профиле оказалась фееричной: почти треть всего процессорного времени (29%) сжиралась кодом, который вообще не делал никакой полезной работы.Рантайм создавал, настраивал, а затем тут же уничтожал объекты исключений StopIteration, о существовании которых Python-код даже не догадывался.Ниже о том, откуда растут ноги у этой проблемы в Си-коде CPython и как пара правок в genobject.c дали ускорение в 1.33x — 1.53x.

  Как я научил Steam Deck скачивать игры по ссылке с телефона: Steam через CEF, Mega на stdlib и один файл

Я люблю игры, которых нет в Steam: DRM-free игры с GOG и itch.io, визуальные новеллы, фанатские переводы и патчи к ним. На Steam Deck всё это прекрасно запускается, но каждый раз через одну и ту же рутину: скачать, переключиться в режим рабочего стола, распаковать, добавить в Steam как стороннюю игру, выбрать Proton, поискать обложки, вернуться в игровой режим. Переключаться туда ради каждой игры было лень, да и просто геморройно.Отсюда и выросла идея DeckDrop

  ИИ‑Стоматолог

За месяц я собрал MVP системы для анализа панорамных рентгенограмм. Идея была простой: врач загружает снимок, а модель выделяет области, которые стоит изучить внимательнее.Я не ставил задачу заменить стоматолога. На этом этапе речь шла только о вспомогательном инструменте, который может работать как второе мнение и подсвечивать подозрительные участки на ОПТГ.В процессе эксперимента выяснилось, что главная проблема была не в выборе модели и не в мощности видеокарты. В датасете оказались изображения, которые вообще не должны были участвовать в обучении. Из‑за этого модель начала выдавать детекции на цветных фотографиях полости рта.Сначала это выглядело как странная ошибка. Потом стало понятно, что именно такие случаи лучше всего показывают ограничения системы.

  От прогноза потока клиентов к оптимальному штату сотрудников

Клиентский поток неоднороден. Он зависит от дня недели, месяца, праздников, времени суток, расположения и формата отделения, а также от локального расписания. Среднее значение за месяц для кадрового планирования почти бесполезно: два отделения с одинаковым месячным объёмом могут иметь совершенно разные утренние пики, продолжительность рабочего дня и долю вечерних посещений.Поэтому банку критически важен прогноз клиентопотока для сбалансированного операционного планирования: нехватка сотрудников ведёт к росту очередей и риску нарушения целевых сроков обслуживания,

  Typing в Python 3.11–3.14: что изменилось и как это использовать уже сейчас

За последнее время я прочитал множество репозиториев, где в Pyhton пользуются типизацией и почти везде синтаксис не новее 3.11: Optional, TypeVar на уровне модуля, Generic[T], кавычки вокруг опережающих ссылок. При этом у Python 3.10 поддержка закончилась, и разработчики языка дали нам новых удобных инструментов и чтобы ими пользоваться не всегда нужно обновляться до последней версии. В этой статье расскажу, какие основные фишки появились за последние несколько лет и как ими пользоваться даже в проектах на старых версиях.

  «Переходи на Spark», говорили они. Сравнил pandas, Polars, DuckDB и PySpark на слабой машине

Сценарий знакомый: открываешь в pandas файл побольше, ноутбук задумывается, и через минуту всё падает с MemoryError. Следом обычно звучит совет: для больших данных есть Spark. Я решил проверить его цифрами, но не на кластере, а на слабой машине с двумя ядрами и 5,8 ГБ памяти.Сравнил шесть вариантов: pandas, pandas с pyarrow, Polars, Polars в потоковом режиме, DuckDB и PySpark. Пять типовых операций, объёмы от 6 до 180 млн строк, контроль памяти и автоматическая сверка результатов между библиотеками. Эта сверка по дороге нашла баг, из-за которого Spark терял целый день данных.Кто сдался первым, кто удивил и почему переход на Spark часто не лучший выход, рассказываю под катом.

Интересные проекты, инструменты, библиотеки

  tlgr: CLI для полного управления аккаунтом Telegram, рассчитанный на скрипты и AI-агентов

tlgr входит в Telegram как обычный пользователь (MTProto, Telethon) и позволяет из терминала читать, искать и отправлять сообщения, управлять чатами, группами, каналами, контактами и медиа. Все команды отвечают в JSON со стабильными кодами выхода, а фоновый демон отправляет события на webhook с HMAC-подписью.

Релизы

  django-filter - 26.2

Django-приложение для гибкой фильтрации объектов модели (querysets). Скачать можно по ссылке: https://pypi.python.org/pypi/django-filter/

  virtualenv - 21.14.4

Инструмент создания виртуального рабочего окружения. Скачать можно по ссылке: https://pypi.python.org/pypi/virtualenv

  SQLAlchemy - 2.1.3

Библиотека работы с базами данных. Скачать можно по ссылке: https://pypi.python.org/pypi/SQLAlchemy/

  pylint - 4.1.2

Статический анализатор Python-кода. Скачать можно по ссылке: https://pypi.python.org/pypi/pylint/

  Werkzeug - 3.1.9

Швейцарский армейский нож веб-разработки Python. Скачать можно по ссылке: https://pypi.python.org/pypi/Werkzeug/

  pyflakes - 4.0.2

Статический анализатор Python-кода. Скачать можно по ссылке: https://pypi.python.org/pypi/pyflakes/