fa
Feedback
Zen of Python

Zen of Python

رفتن به کانال در Telegram

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

نمایش بیشتر

📈 تحلیل کانال تلگرام Zen of Python

کانال Zen of Python (@zen_of_python) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 19 165 مشترک است و جایگاه 6 886 را در دسته فناوری و برنامه‌ها و رتبه 34 845 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 19 165 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 13 ژوئیه, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -89 و در ۲۴ ساعت گذشته برابر -5 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 12.02% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 6.96% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 2 305 بازدید دریافت می‌کند. در اولین روز معمولاً 1 335 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 7 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند github, rust, pip, api, install تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 14 ژوئیه, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

19 165
مشترکین
-524 ساعت
-297 روز
-8930 روز
آرشیو پست ها
VPS в 2026: почему сервер тормозит, хотя метрики в норме Вы смотрите на дашборд: CPU 40%, память не вся занята, а пользовател
VPS в 2026: почему сервер тормозит, хотя метрики в норме Вы смотрите на дашборд: CPU 40%, память не вся занята, а пользователи жалуются на лаги. Скорее всего, ваш VPS просто не получает тех ресурсов, за которые вы платите. За несколько лет картина резко поменялась. Если раньше на одно физическое ядро приходилось 4–8 виртуальных CPU, то у бюджетных провайдеров сейчас норма — 10–16. Пока соседи по хосту спят, вы получаете мощность. Когда все просыпаются одновременно, гипервизор забирает CPU у вас. Это видно в метрике %st — steal time. К этому добавились тяжелее ОС и стек. Ubuntu 24.04 при минимальной конфигурации занимает 3–5 GB RAM ещё до вашего приложения, а современный бэкенд часто тянет брокер, кеш, мониторинг и контейнеры. Разобрались, когда дешёвый VPS перестаёт тянуть и что с этим делать.

Hypothesis начал переносить внутренности с Python на Rust Библиотека property-based тестирования Hypothesis в релизе 6.156.0 от 1 июля объявила о начале миграции внутренних компонентов на Rust. Пока перенесён один простой вспомогательный хелпер, но направление задано, и за неделю вышла целая серия патчей вокруг сборки — вплоть до 6.156.6 от 10 июля. Что это значит на практике: 🔘 сборка из исходников теперь требует Rust toolchain — если ставить не из готового wheel, а компилировать, без Rust не соберётся; 🔘 чтобы это никого не сломало, проект выкатил широкий набор нативных wheels: Python с 3.10 по 3.14, free-threaded 3.14t и PyPy 3.11, под Linux x86_64/aarch64, macOS x86_64/arm64 и Windows x64; 🔘 добавили abi3-wheels на базе стабильного ABI 3.10 — один такой wheel работает на всех последующих версиях Python, включая 32-битные Linux и Windows; 🔘 отдельно собрали wheel под Pyodide (wasm32-unknown-emscripten) для запуска в браузере. За тем же путём Python в Rust уже ушли core-части uv, ruff и pydantic. Теперь очередь дошла и до зрелой тест-библиотеки — с явным приоритетом не сломать установку тем, кто просто делает pip install. @zen_of_python

За @property и @staticmethod стоят дескрипторы Каждый раз, когда вы вешаете декоратор на метод, Python тихо создаёт объект с
За @property и @staticmethod стоят дескрипторы Каждый раз, когда вы вешаете декоратор на метод, Python тихо создаёт объект с методом __get__. Этот объект ловит обращение к атрибуту класса и решает, что вернуть — bound method, вычисленное значение или сам дескриптор. В свежем HOWTO от Рэймонда Хеттингера разобрано, как именно это работает: от примера, который всегда возвращает десятку, до чисто-питонических реализаций property и __slots__. Гайд пригодится, если хотите перестать догадываться и начать предсказывать поведение своих классов.

Altair: графики через описание данных, а не ручная настройка каждой оси В духе Zen of Python: простое лучше сложного. Если в
Altair: графики через описание данных, а не ручная настройка каждой оси В духе Zen of Python: простое лучше сложного. Если в Matplotlib вы сначала объявляете фигуру, потом крутите оси и legend, то в Altair вы просто говорите DataFrame, какую колонку на какую ось положить, что раскрасить и как сделать интерактивным. Библиотека сама строит визуализацию из HTML и JavaScript, которая работает в ноутбуке или сохраняется отдельным файлом. Real Python советует ставить Altair в выделенное виртуальное окружение: вместе с ним приезжают pandas и Vega-Lite-рендерер, и лучше не мешать их с остальным окружением. Это не замена Matplotlib. Для пиксельно точных публикационных фигур или 3D по-прежнему стоит брать Matplotlib; для интерактивного исследования в ноутбуке — Altair удобнее.

На Tproger вышла история разработчика с 10 годами опыта: с инженерной частью у него всё было закрыто, а для своего дела не хватало другого — проверять идею, считать деньги, доводить продукт до рынка. Онлайн-курсы он бросал на середине, поэтому выбрал формат пожёстче: онлайн-магистратуру МФТИ по технологическому предпринимательству. В обзоре: как совмещать такую учёбу с работой, почему реальная нагрузка выходит 20–25 часов в неделю вместо заявленных 10, где программа слабая и во сколько она обойдётся в 2026 году. @zen_of_python

Репозиторий python-patterns: каталог паттернов, которые стоит выбирать с умом В python-patterns собраны классические паттерны
Репозиторий python-patterns: каталог паттернов, которые стоит выбирать с умом В python-patterns собраны классические паттерны и идиомы Python — 42,8k звёзд, 7k форков и 896 коммитов. Сообщество использует его как шпаргалку, чтобы быстро вспомнить, как выглядит тот или иной подход в коде. Авторы явно предупреждают: каждый паттерн несёт свои компромиссы, а выбирать нужно не по красоте реализации, а по ситуации. В Python это особенно актуально — язык сам даёт идиомы, от итераторов до менеджеров контекста, и часто проще использовать встроенное, чем городить фабрику. Полезно сохранить на тот момент, когда вам хочется применить паттерн ради паттерна. Иногда достаточно обычной функции.

Представьте: прошли игру на сайте и выиграли приз от бренда. Какой обрадует по-настоящему? 👇
Anonymous voting

80% корпоративных программ геймификации ломаются на одном и том же месте По данным AmplifAI, игровые кампании дают в среднем
80% корпоративных программ геймификации ломаются на одном и том же месте По данным AmplifAI, игровые кампании дают в среднем вовлечённость на 100–150% выше, чем классические подходы, а геймифицированный контент шерится в 12 раз чаще. При этом примерно 80% корпоративных программ геймификации не достигают целей. Спрос огромный, качество — низкое, а причина проста: делать это берутся не те люди. В статье разбирают, как корпоративные клоны механик упускают баланс и контекст, и что делать, чтобы прогрессия не превращалась в цифровой пендель. Для геймдевелоперов это отличная ниша, где есть и деньги, и возможность применить свои скиллы на практике.

Go-рутины в Python без async/await Runloom экспериментально возвращает Python к простоте блокирующего кода: вызываете fiber(f
Go-рутины в Python без async/await Runloom экспериментально возвращает Python к простоте блокирующего кода: вызываете fiber(fn), пишете обычный recv/send или urlopen, а библиотека паркует задачу на сокете и переключает контекст. Никакого async def, никакого await — как до эпохи asyncio, но с миллионом лёгких потоков на всех ядрах. Под капотом: hand-rolled ассемблерный context switch, work-stealing scheduler на C и netpoll. Цель: free-threaded Python 3.14t с выключенным GIL, когда один процесс действительно может загрузить все ядра, а не притворяться многопоточным. Репозиторий на GitHub.

Вышел mypy 2.2 — главное в релизе то, что тайпчекер научился закрытым TypedDict из PEP 728. Что внутри: 🔘 TypedDict с closed=True запрещает любые ключи сверх объявленных — раньше лишние ключи в значении типа TypedDict были формально допустимы, и тайпчекер не мог на них ругаться; 🔘 закрытость делает надёжным сужение типов: в объединении Book | DVD проверка "author" in item теперь честно доказывает mypy, что перед ним Book; 🔘 работает и в классовом синтаксисе: class Book(TypedDict, closed=True); 🔘 завершена поддержка дефолтов типовых переменных из PEP 696 — и в старой записи TypeVar("T", default=int), и в новой class Box[T = int], включая рекурсивные дефолты; 🔘 mypy теперь уважает явно аннотированный тип возврата у __new__ — раньше он молча считал, что __new__ всегда возвращает экземпляр текущего класса; 🔘 поддержка TypeForm перестала быть экспериментальной. Пользуетесь TypedDict для словарей с фиксированной структурой или в таких местах у вас dataclass и pydantic? @zen_of_python

Метакласс: не магия, а ещё один уровень явности Python Если класс — фабрика объектов, то метакласс играет роль фабрики самих
Метакласс: не магия, а ещё один уровень явности Python Если класс — фабрика объектов, то метакласс играет роль фабрики самих классов. В Python 3 это не опция, а дефолт: любой ваш класс является экземпляром type, а class Foo: pass раскрывается в type('Foo', (), {}). Свой метакласс наследуется от type и переопределяет __new__ или __init__. Он позволяет собирать, изменять или регистрировать классы программно, но в Python явность важнее изящества. В большинстве случаев ту же задачу решают наследование или декоратор класса. Отсюда следует, почему в Python всё есть объект, включая само определение класса. Разбираемся в деталях.

Пример прикладной робототехники: на хакатоне «Робозон» участники собирают интеллектуальную систему сортировки товаров. Задачи охватывают весь цикл — детекция и классификация объектов, трекинг на конвейере, планирование захвата и управление манипулятором. За интеграцию отвечает связка компьютерного зрения с ROS. В ход идут Python, OpenCV, PyTorch/Detectron2, ROS/ROS2 и симуляторы вроде Isaac Gym и CoppeliaSim. Отдельный слой — имитационное моделирование движения товаров и проектирование конструкции самого сортировщика. Финальные решения команды покажут на конференции E-CODE. Описание задач лежит в открытом доступе, если интересно посмотреть постановку.

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

Django выпустил плановые security-релизы 6.0.7 и 5.2.16 — закрыты три уязвимости, и у каждой любопытный механизм: 🔘 кэш-мидлварь UpdateCacheMiddleware и декоратор cache_page не кэшировали ответ с Set-Cookie, только если входящий запрос был совсем без cookie. Если у пользователя уже была любая безобидная cookie вроде выбора темы, защита не срабатывала — и ответ с чужой сессионной cookie мог осесть в общем кэше; 🔘 при создании GDALRaster из bytes свойство vsi_buffer могло прочитать примерно 32 байта за границей буфера — с риском утечки соседней памяти кучи, а в редких случаях и падения процесса; 🔘 DomainNameValidator пропускал переносы строк в доменных именах — если такое значение попадало в HTTP-ответ, открывалась инъекция заголовков. Первые две помечены низкой серьёзностью, но команда рекомендует обновиться как можно скорее всем. Обновляете Django сразу после security-релизов или ждёте планового окна? @zen_of_python

Ваша память ещё работает или нейронки уже и помнят всё за вас? Чтобы это проверить мы приготовили для вас «Меморину» — игру,
Ваша память ещё работает или нейронки уже и помнят всё за вас? Чтобы это проверить мы приготовили для вас «Меморину» — игру, которая поможет проверить вашу память. Всё просто: нужно запомнить и выбрать одинаковые карточки. Если память плохая, то рано или поздно вы всё равно справитесь. А если хорошая, то сможете увидеть ваш потолок скорости. Ну что, готовы проверить? Тогда переходите по ссылке: https://tprg.ru/ydAe

Cursor против Windsurf: что выбрать питонисту Real Python сравнил два редактора на примере отказоустойчивого HTTP-клиента. Об
Cursor против Windsurf: что выбрать питонисту Real Python сравнил два редактора на примере отказоустойчивого HTTP-клиента. Оба работают поверх VS Code, но подходят к ИИ по-разному: Cursor выводит агента, который правит код по запросу, а Windsurf предлагает Cascade с авто-выполнением команд в терминале. Для питониста разница в деталях: Cursor Tab и Windsurf Tab по-разному дополняют код; в отладке Cursor использует inline-обзор и Bugbot, а Windsurf полагается на авто-линтинг. Раньше приходилось прыгать между редактором и отдельным ИИ-чатом, теперь оба инструмента пытаются убрать это трение. Если пишете много асинхронного Python, имеет смысл протестировать оба и сравнить на своих задачах.

⚡️AvitoTech устраивает онлайн CTF с призами до 300 000 рублей команду Что внутри турнира: таски на веб-уязвимости, инфраструктурные мисконфиги, анализ скомпилированного кода, расследование инцидентов, слабости шифров и всё, что требует хакерской смекалки. Если это ваш первый опыт, вписывайтесь в Honey-лигу — туда опытных игроков не пускают. ➡️ Регистрация уже открыта Кажется, это знак собрать свою команду и попробовать себя в роли того самого медоеда! Проверьте защиту пчелиного улья и помогите найти все скрытые уязвимости в сотах!

В Python появится встроенный frozendict: Steering Council принял PEP 814, и тип уже доступен в бета-версиях Python 3.15. Виктор Стиннер, соавтор PEP, рассказал историю вопроса: его первую попытку, PEP 416, Гвидо отклонил ещё в 2012 году. Что внутри: 🔘 неизменяемый словарь: попытка присвоить элемент даёт TypeError; 🔘 хешируемый, если хешируемы все значения, так что его можно класть в set и использовать как ключ словаря; 🔘 сохраняет порядок вставки, но сравнение и хеш от порядка не зависят; 🔘 поддерживает объединение через | и сравнение с обычным dict. Главное отличие от types.MappingProxyType в том, что прокси остаётся обёрткой над живым словарём, а frozendict — самостоятельный неизменяемый тип со своим хешем. Ждёте frozendict в 3.15 или вам хватало MappingProxyType? @zen_of_python

Вышла третья бета Python 3.15 — предпоследняя перед релиз-кандидатом, который намечен на 4 августа. Набор фич зафиксирован, так что уже понятно, что войдёт в релиз: 🔘 ленивые импорты для ускорения старта (PEP 810); 🔘 встроенные типы frozendict (PEP 814) и sentinel (PEP 661); 🔘 сэмплирующий профайлер Tachyon и отдельный пакет для организации инструментов профилирования (PEP 799); 🔘 распаковка в comprehensions (PEP 798) и UTF-8 как кодировка по умолчанию (PEP 686); 🔘 заметно ускоренный JIT: 8–9% среднего прироста на x86-64 Linux относительно обычного интерпретатора, 12–13% на macOS/AArch64; 🔘 стабильный ABI для free-threaded сборок. В самой бете 195 исправлений от 86 контрибьюторов, последняя бета выйдет 18 июля. Разработчикам библиотек самое время прогнать тесты на 3.15 и собрать пререлизные wheels. Уже пробовали 3.15 на своих проектах или ждёте стабильного релиза? @zen_of_python

У Python появится отдельный совет по паковке — назначили даты первых выборов После того как Steering Council в апреле утвердил PEP 772, PSF объявила даты первых выборов в новый Python Packaging Council: технический орган, который берёт на себя решения по спецификациям совместимости пакетов. Совет состоит из пяти мест: два кандидата с наибольшим числом голосов получают двухлетний срок, а три оставшихся получают годовой. Голосование пройдёт параллельно с выборами PSF Board 2026. Даты, если планируете участвовать: 🔘 28 июля: открытие номинаций; 🔘 11 августа: закрытие номинаций; 🔘 13 августа: публикация списка кандидатов; 🔘 25 августа: дедлайн подтверждения намерения голосовать; 🔘 1–15 сентября: само голосование. Голосовать смогут члены PSF уровня Contributing, Supporting или Fellow, которые заранее подтвердят намерение участвовать. Управление пакетным хозяйством Python годами было разбросано между pip, PyPA, отдельными PEP и добровольцами-энтузиастами. Кажется ли вам, что выделенный совет реально наведёт порядок, или это ещё один орган для лишних согласований? @zen_of_python