uz
Feedback

Firibgarlarga uchmang! Telemetrio bunday kanallarni topadi va belgilaydi 👉 Belgini ko‘rmoqchi bo‘lsangiz, obuna bo‘ling

Zen of Python

Zen of Python

Kanalga Telegram’da o‘tish

Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL

Ko'proq ko'rsatish

📈 Telegram kanali Zen of Python analitikasi

Zen of Python (@zen_of_python) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 18 718 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 7 007-o'rinni va Rossiya mintaqasida 35 217-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 18 718 obunachiga ega bo‘ldi.

27 Oktabr, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -91 ga, so‘nggi 24 soatda esa -3 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 6.24% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 4.26% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 1 168 marta ko‘riladi; birinchi sutkada odatda 797 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 1 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent github, rust, pip, api, install kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL”

Yuqori yangilanish chastotasi (oxirgi ma’lumot 28 Oktabr, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

18 718
Obunachilar
-324 soatlar
-387 kun
-9130 kun
Postlar arxiv
Несколько топовых Python-модулей, про которые не все знают​ 1. Tenacity (и обертка Stamina) Мощная библиотека для настройки retry-логики. Вместо того чтобы писать самописные циклы с time.sleep(), вы просто вешаете один декоратор над функцией. Он позволяет из коробки настроить экспоненциальную задержку (exponential backoff), лимит попыток и срабатывание только на определенные типы исключений. ​ 2. Shelve Недооцененный модуль из стандартной библиотеки Python. Это персистентный словарь, который автоматически сохраняет свои данные в локальный файл. Идеально подходит для кэширования или сохранения стейта в простеньких CLI-скриптах, когда разворачивать даже SQLite — это оверкилл. Вы просто открываете его как обычный dict, пишете данные и закрываете. ​ 3. Polars Сверхбыстрая альтернатива Pandas, написанная на Rust. Скорость загрузки просто космос, быстрая обработка гигантских CSV-файлов, с которыми классический Pandas начинает тормозить. 4. Marimo Современная замена Jupyter Notebooks. Это реактивные ноутбуки для Python, которые гарантируют воспроизводимость (нет проблемы скрытого состояния ячеек). В комментариях советуют использовать Marimo в связке с тем же Polars и DuckDB для максимально комфортного анализа данных. @zen_of_python

Разработчик провёл масштабное исследование всех способов ускорить Python. Взял классические математические тесты (n-body, spectral-norm) и пайплайн обработки JSON, а затем прогнал их вообще через всё: от разных версий CPython и PyPy до Numba, Cython, Mojo и связки Rust/PyO3. ​ Самые интересные результаты бенчмарков: — GraalPy стал главным сюрпризом. На задаче spectral-norm он разогнал выполнение в 66 раз без единого изменения в исходном коде, обогнав даже скомпилированный Cython; ​ — в самом Cython нашлась неприятная подстава с типами. Оказалось, что возведение в дробную степень через стандартный оператор ** работает в 40 раз медленнее, чем прямой вызов сишной функции libc.math.sqrt() с типизированными даблами; ​ — компилятор Cython никак не предупреждает о таких просадках при сборке. Код успешно компилируется, но теряет огромную долю потенциального ускорения. ​ В итоге для реального продакшена самым стабильным вариантом остаётся классический подход. Проще всего держать основную бизнес-логику на обычном интерпретаторе, а точечные узкие места переписывать на Rust или выносить в C-расширения. Код всех проверок и итоговые графики выложены в открытый доступ на гитхабе. @zen_of_python

Как ML помогает тестировать то, что нельзя предсказать вручную? В новом материале — кейс о том, как спроектировать систему ди
Как ML помогает тестировать то, что нельзя предсказать вручную? В новом материале — кейс о том, как спроектировать систему динамической генерации тестовых сценариев для транспортного проекта. За основу взято имитационное моделирование с элементами ML. В статье подробное описание архитектуры решения: — пайплайн из Great Expectations, Evidently AI, DVC и Airflow; — три слоя данных: продовые срезы, обезличенные профили и «мутации» аномалий от ML; — а еще швейцарский сыр. Как он там оказался, читайте в статье.

Вышел релиз DuckDB 1.5.0. Если вы ещё не пользовались этим инструментом, представьте себе SQLite, но только для аналитики и р
Вышел релиз DuckDB 1.5.0. Если вы ещё не пользовались этим инструментом, представьте себе SQLite, но только для аналитики и работы с данными. Это колоночная база данных, которая работает локально внутри вашего процесса без отдельного сервера и умеет очень быстро переваривать огромные датасеты. ​ Что интересного завезли в новом обновлении: — на уровне движка добавили типы VARIANT для полуструктурированных данных и GEOMETRY для пространственных вычислений; ​ — консольную утилиту duckdb-cli опубликовали в PyPI, поэтому теперь ее не нужно качать руками, а можно моментально поднимать через pip или uv; ​ В связке с новой функцией read_duckdb это позволяет делать классные вещи прямо в терминале. Например, вы можете одной командой прочитать таблицу из удал`нной базы по ссылке, вообще не скачивая сам файл целиком на диск:
uv run -w duckdb-cli duckdb -c "from read_duckdb('https://blobs.duckdb.org/data/animals.db', table_name='ducks')"
На выходе вы мгновенно получите отформатированную таблицу в консоли. Идеальный инструмент, когда нужно быстро проанализировать датасет без поднятия тяжёлой инфраструктуры. @zen_of_python

Публичное API pandas теперь на 100% покрыто аннотациями типов. За год команды Quansight Labs и Pyrefly перебрали кодовую базу и подняли покрытие с 47% до максимума, ориентируясь на проверки статического анализатора Pyright. ​ Что это меняет на практике: — ваши IDE вроде VSCode и PyCharm начнут выдавать адекватный автокомплит и точные подсказки по методам; ​ — статические анализаторы смогут ловить баги с неправильными аргументами ещё до запуска пайплайна. ​От себя могу добавить только одно: наконец-то. @zen_of_python (теперь и в Max)

Откуда вы? Если нет вашего варианта — напишите в комментах
Anonymous voting

Если вы используете httpx в своих проектах, обратите внимание на изменения в репозитории. На днях мейнтейнер библиотеки полно
Если вы используете httpx в своих проектах, обратите внимание на изменения в репозитории. На днях мейнтейнер библиотеки полностью закрыл доступ к issues и discussions на гитхабе. Причина блокировки оказалась не технической. Автор объяснил свое решение тем, что больше не хочет поддерживать онлайн-среду с «абсурдно искаженным гендерным представительством». ​ Чем это грозит на практике: — библиотека не получала новых релизов уже больше года, новых скорее всего уже тоже не будет; — разработчики потеряли возможность сообщать о багах и обсуждать код. ​ Поскольку httpx часто применяется для асинхронных запросов, на реддите уже активно обсуждают будущее проекта. Многие пользователи не понимают, как поддерживать свои продукты дальше без обратной связи от автора. ​ Пока непонятно, появится ли полноценный форк или сообществу придется переходить на альтернативы вроде aiohttp. Советую иметь в виду при выборе библиотеки в своих проектах. @zen_of_python (теперь и в Max)

Победителями премии Тпрогер 🐀становятся... Здесь играет барабанная дробь и интригующая музыка... Вам нужно только выждать др
+4
Победителями премии Тпрогер 🐀становятся... Здесь играет барабанная дробь и интригующая музыка... Вам нужно только выждать драматическую паузу перед объявлением победителей — в каждой номинации он один, и определяется большинством голосов. Готовы? В номинации «Продукт года» золотая мышь достается компании: 🐀NetVision за платформу интеллектуального мониторинга СИМ. В номинации «Облачный продукт года» побеждает компания: 🐀Гравитон с паком виртуализации «Гелиус» Звание «IT-ивент года» вручается компании: 🐀Островок! за О!Хакатон И в категории «Дизайн года» первое место занимает компания: 🐀AcademiaDev за интерактивную инсталляцию. Каждый ваш лайк, голос влияли на исход премии. Давайте поддержим всех — ставьте 🏆участникам, которые хоть и не заняли призового места, но точно остались в сердечке. И 🔥, если хотите аналогичных активностей и готовы выбирать еще!

Чем занимаетесь? Можно выбрать несколько вариантов
Anonymous voting

Классика
Классика

Кто вы в IT? Если не нашли свой вариант — напишите в комментах
Anonymous voting

Опубликован черновик PEP 827 (Type Manipulation). Он предлагает добавить в Python возможности из TypeScript, чтобы не дублировать код при описании моделей. Допустим, у вас есть класс User для базы данных, где есть id, email, username и created_at. Вам нужен класс UserUpdate для API, где id и created_at менять нельзя, а остальные поля необязательны, можно обновить только email. Сейчас приходится вручную писать новый класс и дублировать поля. С PEP 827 можно будет сгенерировать его одной строкой:
UserUpdate = Partial[Omit[User, "id" | "created_at"]]
— Omit убирает лишние поля из базового класса — Partial делает оставшиеся необязательными — Если тип email изменится в главной модели, он автоматически обновится и в UserUpdate Вместо копипасты под каждый эндпоинт (Create, Update, Read) вы описываете одну модель и генерируете производные. И всё это работает на уровне статического анализа. Черновик нацелен на Python 3.15. @zen_of_python

Senior-level решение задачи
Senior-level решение задачи

Последний день голосования в Tproger Award! Две недели, 16 компаний, 4 номинации — спасибо, что читали, участвовали и лайкали
Последний день голосования в Tproger Award! Две недели, 16 компаний, 4 номинации — спасибо, что читали, участвовали и лайкали. И отдельное спасибо, что голосовали! Вообще не представляем, что вы там наделали, уже узнать хочется! Давайте сегодня зафиналим голосовалку и раздадим по максимуму золотых мышей. Интересно, расстановка сил сможет измениться за один день? Если потеряли, то номинации вот: — Продукт года — Облачный продукт года — ИТ-ивент года — Дизайн года Только сайт не положите, очень просим 🙏 Пойти голосовать: https://tprg.ru/bWfy

Финал Tproger Awards уже близко! 🔥 Заканчивается февраль, и наше голосование за лучшие релизы года тоже подходит к концу. К
Финал Tproger Awards уже близко! 🔥 Заканчивается февраль, и наше голосование за лучшие релизы года тоже подходит к концу. К тем, кто вручил участникам золотые мыши, вопросов нет. Тех, кто еще не посещал премию, зовем предпоследний раз! Не упускайте возможность выбрать лучшую компанию года. Напомним, что в премии четыре номинации, а все кейсы читаются легко и быстро. Так что вас ждет приключение ну буквально на 20 минут. Голосуйте: https://tprg.ru/QtJE

Внезапное порно в Conda История такая: один разработчик хотел посмотреть YouTube, открыл меню «Пуск» в винде, начал вбивать You и увидел подсказу YouPorn. Очень удивился, потому что он не смотрит порно (конечно, а как вы подумали). Начал расследование. Оказалось, что файл с таким именем лежит в Anaconda3\pkgs\protego\info\test\tests\test_data. Protego — Python-библиотека для парсинга файлов robots.txt. В её тестовых данных есть пример файла robots.txt с сайта YouPorn т.е. обычный тест на реальных данных из интернета. Никакого вредоносного кода, никакой атаки на supply chain, просто Windows Search проиндексировал содержимое тестовых файлов внутри пакетов Conda. Это хороший повод напомнить: Windows Search индексирует всё подряд, включая содержимое директорий с пакетами. При разработке на винде лучше добавить такие диры в исключения. Или не разрабатывать на винде. @zen_of_python

Weekend Offer Multitrack: быстрый найм для опытных специалистов Яндекс приглашает бэкенд-разработчиков с опытом от 5 лет на C
Weekend Offer Multitrack: быстрый найм для опытных специалистов Яндекс приглашает бэкенд-разработчиков с опытом от 5 лет на C++, Python, Go или Java/Kotlin получить офер за 2 дня и поработать в трёх командах на выбор. Приходите, если вам важно видеть результат своей работы в живых системах и метриках, а не только в merged PR. Как всё проходит: 🟢 До 6 марта — регистрация на сайте. 🟢 14 марта — технические секции. 🟢 15 марта — финальная секция и офер. После получения офера у вас будет возможность выбрать три команды и в течение нескольких недель поочерёдно поработать в каждой. Такой формат позволит не только познакомиться с коллегами и технологическим стеком, но и оценить задачи и рабочие процессы в каждой команде. Подробности и форма регистрации — по ссылке. Это #партнёрский пост

PEP 747 принят. В typing добавится TypeForm[T] — способ аннотировать аргументы, которые принимают не значения, а сами типы: int | str, list[int], TypedDict и другие. Раньше функции вроде trycast() или is_match() из библиотек beartype, pydantic, typeguard приходилось аннотировать через object, слишком широко, без проверки типов. Теперь можно так:
def trycast[T](typx: TypeForm[T], value: object) -> T | None: ...
def is_match[T](value: object, typx: TypeForm[T]) -> TypeGuard[T]: ...

# Или просто переменная:
int_form: TypeForm = int | None
В Python приедет с версии 3.15. Уже сейчас доступно через typing_extensions. Экспериментальная поддержка есть в Pyright @zen_of_python

Вышел Starlette 1.0.0rc1, первый релиз-кандидат после 8 лет разработки Напомню, Starlette — легковесный ASGI-фреймворк для Python. Поддерживает WebSocket, HTTP/2, фоновые задачи, middleware и маршрутизацию. На нём построен FastAPI, Starlette отвечает за всю сетевую часть, а FastAPI добавляет сверху валидацию через Pydantic и автогенерацию OpenAPI-схемы. Том Кристи создал Starlette в июне 2018, а сейчас Марсело Трилесинский (Kludex) выпустил первый RC версии 1.0. Почти 10 млн скачиваний в день, а с недавних пор ещё и зависимость Python MCP SDK. Что в релизе. Удаление deprecated-фич, помеченных для удаления в 1.0.0, плюс финальные баг-фиксы. Никаких крупных новых API, акцент на стабильности. Реакция сообщества. «Starlette работала настолько стабильно, что казалось, будто 1.0 уже давно вышла». Несколько человек отметили, что узнали о Starlette как о зависимости, только когда начали копаться в MCP-серверах. ​ Установка: pip install starlette==1.0.0rc1 @neuro_channel

Как вам формат TOON (Token-Oriented Object Notation) вместо JSON? Массивы объектов объявляются один раз в заголовке users[2]{
Как вам формат TOON (Token-Oriented Object Notation) вместо JSON? Массивы объектов объявляются один раз в заголовке users[2]{id,name,role}:, а дальше идут только данные через запятую без лишних скобок и ключей. Это сокращает объём данных на 30–60%. Для Python уже есть готовые библиотеки, например python-toon и toons. Для промтов в ИИ экономия токенов. Для людей на глаз вроде тоже проще читается. С другой стороны это просто CSV с дополнением, вложенности не очень удобно делать. Что думаете? @neuro_channel