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

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


Новый материал в ленте
  pylint - 4.1.4

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


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

(09.11.2026 - 15.11.2026)

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

Статьи

  На «ё» бывают не только рестораны. Как разработчикам угрожают две буквы

Почему len(“ё”) в Python иногда возвращает 2, регулярка [а-яА-Я]+ отвергает слово «ёж», а стандартная нормализация Unicode пропускает фишинговые логины с кириллической «а»?Редакторы спорят, нужна ли буква «ё» в тексте, а разработчики ловят из-за неё баги в проде. На примерах в Python и PostgreSQL 18 разбираемся, как две точки над буквой влияют на хранение данных, почему расширение unaccent создаёт смысловые коллизии между «мелом» и «мёлом» и как правильно разделить нормализацию, полнотекстовый поиск и защиту от омоглифов.

  Оптимизация расхода ферромарганца в ДСП-3 с помощью Catboost

В этой статье на данных из первой части учим CatBoost предсказывать минимальную дозу ферромарганца для выплавки отливки из стали 35Л в дуговой сталеплавильной печи с основной футеровкой.

  Nokia N70: пишем софт на Symbian в 2026

Как писать софт на современном ПК для SDK которой больше 20 лет? У Nokia N70 снова есть непрочитанные. Как я сделал Telegram-пейджер для Symbian 8.1.

  Универсальный ридер кодов libscanner‑unir против zxing‑cpp, ZBar и OpenCV на 6900 снимках из открытых наборов

EAN-13 на пачке, сфотографированной телефоном без автофокуса. Code 128 на коробке под углом, SSCC на паллетной этикетке, которая проезжает под камерой конвейера. Мы сравнили, как такие снимки читают zxing-cpp, ZBar, OpenCV и движок линейных штрихкодов нашего универсального ридера кодов (unir).

  Я протестировал 10 голосовых ИИ, или насколько мы близки к революции фанатского ИИ-дубляжа?

Полноценный дубляж стоит дорого. Очень и очень дорого. Особенно это заметно в аниме. Чтобы у каждого героя был свой голос, а реплики попадали в движение губ, нужен переводчик, который перепишет текст под длину каждой фразы, режиссер, студия и отдельный актер на каждую роль, который вытянет то, что озвучил сэйю (так называют актеров дубляжа аниме). Фанатским командам такое и не снилось. Почему?

  Не ERP, а надзиратель: система для моего производства, которая всех тормошит

У меня небольшое производство электродвигателей, и задачи у нас терялись между людьми: поставили одну, пришёл человек с другой, про первую забыли. Я не стал внедрять ERP, а за три недели выходных собрал свою систему. Задачу надиктовываешь в цеху на телефон, агент раскладывает её по полям, и она сразу улетает исполнителю. А надзиратель следит за цепочками задач и сам тормошит того, из-за кого стоит работа.

  От игрушки с рандомными опкодами до 4-битной машины времени: как я собрал настоящий Intel 4004

Как я переписал свой старый эмулятор с нуля: теперь это не игрушка с рандомными опкодами, а полноценная машина времени с ассемблером, линкером, BASIC, виртуальными дискетами, монитором и Тетрисом, который ломается ровно так, как ломался бы на реальном железе 1971 года.

  Дело не в нагрузке: почему пул httpx теряет соединения при отменах

PoolTimeout, когда свободные соединения вроде бы есть, и медленный рост busy при ровном RPS — знакомые симптомы? Причина может быть не в нагрузке, а в отмене запроса при закрытии ответа: в httpcore соединение остаётся в состоянии ACTIVE, а закрыть его повторно уже некому. В статье — диагностика по состоянию пула, минимальное воспроизведение и варианты исправления, пока фикса в upstream нет.

  ОС еще не загрузилась, а Python уже работает: зачем мы принесли змею в UEFI

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

  Python 3.15 включил UTF-8 по умолчанию: что ломается в cp1251 и как это найти до бухгалтерии

В Python 3.15 open() без encoding читает и пишет UTF-8 независимо от локали (PEP 686). На русской Windows и серверах с ru_RU.CP1251 это значит падения на выгрузках из 1С и, что хуже, тихие кракозябры в файлах для соседних систем. Воспроизводим на 3.14 и 3.15, находим такие места через EncodingWarning и ruff и чиним так, чтобы код одинаково работал на всех версиях.

  Может ли ИИ писать автотесты за QA-инженера? Проверили на реальных задачах

В этой статье расскажу, как мы разработали первоначальную модель взаимодействия QA-специалиста с LLM. Для работы с чувствительными данными мы интегрировали агента с локальной моделью Qwen3.8-27B. На реальных примерах покажу, в каких задачах ИИ действительно нам помог, а где его применение пока вызывает вопросы.

  Presidio на практике: русский язык, свои правила и LiteLLM

Как скрывать имена и контакты перед отправкой текста во внешнюю LLM и возвращать их после ответа? Разбираю Presidio: настройку русского языка, собственные правила и интеграцию с LiteLLM. Сравниваю три конфигурации на 20 вымышленных текстах и показываю, где часть адреса остается открытой.

  Pip-Boy на Raspberry Pi как полезный предмет интерьера

Когда старая Raspberry Pi годами лежит без дела, её надо куда-то пристроить. Я нашел ей применение в корпусе от Pip-Boy из Fallout, который напечатал на 3д-принтере. Теперь у меня на столе стильный предмет интерьера, где можно посмотреть время, курсы валют в fallout-стиле. При сборке были сложности и пришлось использовать немного костылей - но в итоге, все заработало.

  RoombaMusic: как я заставил старую Roomba играть MIDI с современного ПК

У меня дома уже много лет лежит iRobot Roomba — та самая, из середины нулевых. Выкидывать жалко, работать как пылесос она уже толком не хочет, а тут я вспомнил про старый проект HackingRoomba Тода Курта: он ещё в 2006-м показал, что Roomba можно заставить играть мелодии через открытый протокол Roomba Open Interface. Идея была классная, но утилиты RoombaMidi и RoombaMidi2 давно перестали запускаться на современных ОС — драйверов нет, порты другие, Java несовместимая.

  Локальная озвучка на Python: Silero, XTTS-v2 и F5-TTS в одном окне, и всё, на чём я споткнулся

Мне регулярно нужно озвучивать русский текст, а онлайн-сервисы с бесплатным лимитом знаков и подпиской после него надоели. Нейросетевой синтез речи давно спокойно крутится на домашней видеокарте, поэтому я собрал вокруг него оболочку: окно на tkinter, в котором есть три движка, Silero, голоса Microsoft Edge и клонирование голоса (XTTS-v2 и F5-TTS).

Вопросы и обсуждения

  Python Bytes: #504 Who turned the GIL back on?

Очередной выпуск англоязычного подкаста Python Bytes

Релизы

  pymongo - 4.20.0

Python интерфейс для MongoDB. Скачать можно по ссылке: https://pypi.python.org/pypi/pymongo/

  gunicorn - 27.0.1

WSGI HTTP-сервер для UNIX. Скачать можно по ссылке: https://pypi.python.org/pypi/gunicorn/

  django-rosetta - 0.10.4

Django-приложение, которое облегчает перевод Django-проектов. Скачать можно по ссылке: https://pypi.python.org/pypi/django-rosetta

  pylint - 4.1.4

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

  tornado - 6.6.1

Масштабируемый, не блокирующий web-сервер. Скачать можно по ссылке: https://pypi.python.org/pypi/tornado/

  gunicorn - 27.0.0

WSGI HTTP-сервер для UNIX. Скачать можно по ссылке: https://pypi.python.org/pypi/gunicorn/

  coverage - 7.17.3

Утилита позволяющая измерить процент покрытия тестами. Скачать можно по ссылке: https://pypi.python.org/pypi/coverage/