Аватар канала Zen of Python
TG

Zen of Python

Telegram · zen_of_python
Полный Дзен Пайтона в одном канале Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL
Подписчиков18 800
Охват поста1 080
Коэффициент охвата5,7%
Постов за месяц 61 последний 3 октября 2026
Рекламных постов 0 0,0% ленты
Прирост аудитории −2,1% за 90 дней

Вашу рекламу в этом канале увидит до 1 тыс. человек

Заказать рекламу →

Динамика подписчиков

с 20 июля 2026 по 12 октября 2026 · минимум 18 800 · максимум 19 194

Кто рекламировался за полгода

ООО "ШОРТКАТ" · ИНН 9731139396 · ОГРН 1247700560140 · последний пост 25 августа 2026
МФТИ, ФИЗТЕХ · ИНН 5008006211 · ОГРН 1027739386135 · последний пост 13 июля 2026

Рекламодатель определён по маркировке рекламы в постах канала.

Публикации

Оригинал

Как вернуть значение из всплывающего окна в форму Django Admin Django Admin умеет создавать связанный объект во всплывающем окне и сразу подставлять его в исходную форму. Практический разбор этого механизма показывает, как переиспользовать его для собственного инструмента выбора значений. Пример связывает ModelAdmin , отдельное представление, URL и шаблон. Ссылка вызывает showRelatedObjectLookupPopup , а кнопка во…

832 просмотров
Оригинал

Охрана трубопровода длиной 400 километров Камеры на столбах не заглянут за угол, дрон висит 30-40 минут и летит заряжаться, а охранник-человек — дорого, медленно и небезопасно на протяжённом объекте. Технический разбор робопса изнутри: что скрыто под закрытым ядром биомеханики, какой стек сенсоров закрывает слепые пятна друг друга — лидар боится стекла, поэтому рядом ставят сонар. Как рой из нескольких собак строит…

980 просмотров
Оригинал

Как не сломать pickle собственным исключением Python Если конструктор исключения принимает field и reason , не заменяйте их готовой строкой при вызове super().__init__() . Иначе в args останется один элемент, а при восстановлении BaseException.__reduce__ передаст его обратно конструктору. Тот ждёт два аргумента, поэтому распаковка завершится TypeError . Так же ломаются copy.copy() и передача исключения между…

1 160 просмотров
Оригинал

Как выстроить защиту цепочки поставок Python Эшелонированная схема защиты начинается с собственного кода: Ruff находит секреты, слабую криптографию и запросы без тайм-аута до публикации пакета. Зависимости и их криптографические хеши фиксируют через uv lock или uv pip compile --generate-hashes . Затем pip-audit ищет в CI известные уязвимости, а SBOM помогает понять, затронул ли проект компрометированный пакет.…

1 120 просмотров
Оригинал

Пакетная обработка в Python: где strict=True не спасает запись С Python 3.12 itertools.batched() лениво забирает из итератора элементы только для очередного кортежа. Поток из файла, курсора или генератора не приходится сначала превращать в список: памяти для группировки нужно столько, сколько занимает один пакет, а не весь источник. С Python 3.13 параметр strict=True отклоняет неполный последний пакет. Но ошибка…

1 070 просмотров
Оригинал

Как воспроизводить гонки потоков Python с помощью blanket Обычно порядок выполнения потоков выбирает ОС, поэтому редкая гонка превращает тест в лотерею. blanket оборачивает примитивы threading , а тест сам решает, какой поток продолжит работу. Пять повторов перестают быть стратегией тестирования. В Scenario можно заставить поток B захватить блокировку раньше A, задать порядок освобождения барьера или выбрать поток,…

1 010 просмотров
Оригинал

Как отменять задачи в heapq и сохранять порядок при равных приоритетах heapq сравнивает кортежи по полям. Поэтому запись (приоритет, задача) при равных приоритетах либо сравнит сами задачи, либо упадёт, если объекты несравнимы. Надёжная форма: (приоритет, номер, задача) , где номер выдаёт itertools.count() . Он сохраняет порядок добавления и не допускает сравнения задач. Искать и удалять произвольную запись по…

999 просмотров
Оригинал

Как битовые множества сокращают память моделей Pydantic Explicit is better than implicit, но хранить набор явно переданных полей в полноценном Python set оказалось накладно. Memray показал: создание model_fields_set заняло почти 800 МБ на миллионе экземпляров модели с семью полями. Поскольку поля модели упорядочены, каждому можно назначить номер бита: 1 означает, что значение передали при создании, 0 — что…

1 110 просмотров
Оригинал

Как проверять плагины через контракт Pydantic и FastAPI Сервис может отвечать по нужным адресам и всё же возвращать несовместимые данные. В схеме общего API-контракта модели Pydantic для /ready , /catalog и /encode/ вынесены в отдельный пакет. Плагин использует эти модели в обработчиках FastAPI, а платформа проверяет ими ответы при регистрации. Если структура не совпадает, сервис не подключается. Контракт фиксирует…

1 100 просмотров
Оригинал

Как OpenBLAS ускоряет NumPy в браузере Раньше браузерная сборка NumPy выполняла np.matmul обычными циклами на C, которые не учитывали кэш процессора и векторные инструкции. Теперь NumPy 2.5.3 из Emscripten-forge по умолчанию подключает OpenBLAS 0.3.34 для WebAssembly. На квадратных матрицах 1024 × 1024 умножение ускорилось примерно в 30,92 раза для float32 и в 14,90 раза для float64 . Прирост зависит от операции.…

1 050 просмотров

Похожие каналы