ch
Feedback

不要被骗子欺骗!Telemetrio 会找到并标记这些频道 👉 如果想查看标记,请订阅

Zen of Python

Zen of Python

前往频道在 Telegram

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

显示更多

📈 Telegram 频道 Zen of Python 的分析概览

频道 Zen of Python (@zen_of_python) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 18 718 名订阅者,在 技术与应用 类别中位列第 7 007,并在 俄罗斯 地区排名第 35 217 位。

📊 受众指标与增长动态

自 невідомо 创建以来,项目保持高速增长,吸引了 18 718 名订阅者。

根据 28 十月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -100,过去 24 小时变化为 -10,整体触达仍然可观。

  • 认证状态: 未认证
  • 互动率 (ER): 平均受众互动率为 6.22%。内容发布后 24 小时内通常能获得 4.24% 的反应,占订阅者总量。
  • 帖子覆盖: 每篇帖子平均可获得 1 165 次浏览,首日通常累积 793 次浏览。
  • 互动与反馈: 受众积极参与,单帖平均反应数为 1。
  • 主题关注点: 内容集中在 github, rust, pip, api, install 等核心主题上。

📝 描述与内容策略

作者将该频道定位为表达主观观点的平台:
“Полный Дзен Пайтона в одном канале Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/xZOL”

凭借高频更新(最新数据采集于 29 十月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。

18 718
订阅者
-1024 小时
-467 天
-10030 天
帖子存档
​​Из медтеха в Python-разработчики: как менторство помогло найти работу в IT Когда переходишь из медтеха в Python-разработку, путь может оказаться очень тернистым. В статье на Tproger рассмотрели, как наставник помог начинающему совершить этот переход, вплоть до первого трудоустройства. Материал вдохновляет на то, чтобы не бояться менять направление и искать менторов, ведь их опыт может сократить время и увеличить шанс успеха. Полезно всем, кто думает о смене профессии или уже учится, но не знает, как применить знания на практике и выйти на рынок. #обучение @zen_of_python

Фабрики в Python В программировании довольно часто встречается задача: в зависимости от входных данных нужно выбрать подходящий класс для обработки. Например, у нас есть XML-файлы и JSON-файлы, и мы хотим написать систему, которая будет их импортировать. На первый взгляд решение простое — внутри метода проверять расширение файла и создавать соответствующий объект. Но у такого подхода есть несколько серьёзных недостатков. Именно здесь на помощь приходит паттерн «Фабрика». Рассмотрим упрощённый пример кода:

class XMLImporter:
    def __init__(self, filename):
        self.filename = filename

    def execute(self):
        print("XML imported from", self.filename)


class JSONImporter:
    def __init__(self, filename):
        self.filename = filename

    def execute(self):
        print("JSON imported from", self.filename)


class Document:
    def import_file(self, filename):
        if filename.endswith(".xml"):
            importer = XMLImporter(filename)
        elif filename.endswith(".json"):
            importer = JSONImporter(filename)
        data = importer.execute()


document = Document()
document.import_file("text.xml")
document.import_file("text.json")
На первый взгляд код рабочий, но здесь нарушаются два принципа SOLID: 1️⃣ Принцип единственной ответственности (Single Responsibility Principle): класс Document отвечает сразу за две вещи: 🔘 создание объектов XMLImporter, JSONImporter; 🔘 их использование. 2️⃣ Принцип открытости/закрытости (Open / Closed Principle). Если появится новый формат (например, CSV), придётся снова лезть в метод import_file и расширять блок if / elif. Решение: фабрика Чтобы убрать ответственность за создание объектов из класса Document, вводится так называемася фабрика.

class ImporterFactory:
    def get_importer(self, filename):
        if filename.endswith(".xml"):
            return XMLImporter(filename)
        elif filename.endswith(".json"):
            return JSONImporter(filename)
Теперь Document больше не знает, как именно создаются нужные классы. Ему просто передают готовую фабрику:

class Document:
    def __init__(self, factory):
        self.factory = factory

    def import_file(self, filename):
        importer = self.factory.get_importer(filename)
        data = importer.execute()


factory = ImporterFactory()
document = Document(factory)

document.import_file("text.xml")
document.import_file("text.json")
Преимущества фабрики 1️⃣ Изоляция ответственности: логика создания объектов теперь сосредоточена только в одном месте — в ImporterFactory. 2️⃣ Гибкость: если нужно добавить поддержку нового формата (CSV, YAML и т.д.), достаточно изменить фабрику, не трогая Document. 3️⃣ Удобное тестирование: в тестах можно подменить фабрику на «фиктивную» (mock) и проверять работу Document независимо от импортеров. Что дальше? Фабрика — это базовый паттерн. На его основе строятся более сложные подходы, например: 🔘 Factory Method — когда создание объектов делегируется подклассам. 🔘 Abstract Factory — когда фабрика создаёт целые семейства объектов, согласованных между собой. #основы

memory_graph | Визуализация кода Помощник в изучении и отладке, который визуализирует состояние программы: переменные, структуры данных и стек вызовов. Он позволит наглядно понять ключевые концепции — ссылки и изменяемость и проч. С помощью графов можно визуализировать взаимосвязи между объектами, что они содержат и как меняются во времени. Удобен как для студентов и начинающих программистов, так и для тех, кто хочет глубже осознать, как Python работает «под капотом». Модуль можно использовать даже в ноутбуках. #инструмент @zen_of_python

​​Bazel | Сборка и тестирование, как в FAANG Опенсорсная версия внутреннего инструмента Google, которая делает процесс сборки эффективнее: — Дает пересобрать только те участки кода, где были изменения (Incremental Builds); — Позволяет сдруживать Python-код с другими ЯП; — Дружит с CI / CD; — Поддерживается на популярных ОС: Windows, Linux, macOS. #инструмент @zen_of_python

Поговорим на Python. Разработка ПО для начинающих Простое и дружелюбное введение в программирование для новичков. Вместе с ге
Поговорим на Python. Разработка ПО для начинающих Простое и дружелюбное введение в программирование для новичков. Вместе с героями книги вы пройдёте путь от идеи до готового приложения, шаг за шагом осваивая основы Python. Читатель научится не только писать код, но и мыслить как программист: планировать, отлаживать и находить решения. Книга построена на практике — вы создадите собственное онлайн-меню для кафе и постепенно поймёте, как устроена разработка. Это отличный старт для детей и студентов. #книга #обучение @zen_of_python

self: простейшее объяснение Если вы только начинаете изучать Python, то почти наверняка уже столкнулись с self. В этом лонгриде мы разберемся, что это и с чем это едят. self — это ссылка на объект Ключевое слово self используется в методах классов. Оно всегда указывает на текущий экземпляр класса, через который происходит обращение к данным и методам.

class Employee:
    def set_salary(self, value):
        self.salary = value

e = Employee()
e.set_salary(2000)
print(e.salary)
Когда вы создаёте объект, Python автоматически передаёт этот объект первым аргументом в метод. Принято называть его self, хотя технически вы можете использовать любое имя. 🔘 Создаётся класс Employee с методом set_salary. Этот метод принимает два аргумента: — self — сам объект; — value — значение, которое мы хотим установить. 🔘 Внутри метода выполняется присваивание:

self.salary = value
Это значит, что у конкретного объекта e создаётся атрибут salary, которому присваивается переданное значение. 🔘 Далее создаём объект:

e = Employee()
🔘 Устанавливаем зарплату:

e.set_salary(2000)
На самом деле Python преобразует этот вызов в:

Employee.set_salary(e, 2000)
🔘 Проверяем результат:

print(e.salary) # 2000
Почему без self не обойтись? self позволяет объекту хранить собственные данные. Каждый экземпляр класса имеет свой набор атрибутов, и именно через self мы к ним обращаемся. Например, если создать двух сотрудников:

e1 = Employee()
e2 = Employee()

e1.set_salary(2000)
e2.set_salary(3000)

print(e1.salary)  # 2000
print(e2.salary)  # 3000
У каждого объекта будет своя зарплата. #инструмент @zen_of_python

Кому из вас, уважаемые папищеки, сейчас тоже приходится гореть в аду дедлайнов? Давайте запилим свой кодерский профсоюз. #кек
Кому из вас, уважаемые папищеки, сейчас тоже приходится гореть в аду дедлайнов? Давайте запилим свой кодерский профсоюз. #кек @zen_of_python

Repost from IT Юмор
🐍🐍🐍 @ithumor

«Покажите ваши навыки Python» #кек @zen_of_python

Вопросы подписчиков Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает: — Спрашивайте
Вопросы подписчиков Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает: — Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов! — Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте. p.s. Теперь на обложке рубрики помимо питонов будет также его рацион :) #обсуждение @zen_of_python

​​Starplot | Визуализируем звездное небо Пожалуй, самая романтичная библиотека за последнее время в канале... Тул для создания карт неба умеет строить разные типы визуализаций: — Zenith Plots (вид всего неба над головой в заданное время и месте); — Horizon Plots (небо над горизонтом); — Map Plots с различными проекциями; — Optic Plots — имитацию вида через телескоп или другое оптическое устройство. Поддерживается более 14К объектов — звёзд, планет, созвездий и проч. #инструмент @zen_of_python

Cruft | Бойлерплейт из вашего проекта Инструмент, который позволяет вам создать свой шаблон из уже существующего проекта, и потом поддерживать его. Основан на CookieCutter — аналогичной CLI-утилите. После создания можно использовать команду cruft update, чтобы подтягивать изменения из шаблона по мере его развития. Инструмент умеет проверять, актуален ли проект относительно шаблона, и позволяет автоматически применять обновления через CI-конвейеры. Это отличный способ избежать дублирования кода и облегчить поддержку множества проектов, основанных на одном шаблоне. #инструмент @zen_of_python

Что значит стрелка -> Если вы столкнулись со знаком -> в коде на Python и задумались, а не код из R ли это нужно ли это, как это работает и откуда оно взялось, этот лонгрид ответит на такие вопросы. Стрелка в определении функции служит для аннотации типа возвращаемого значения. Она ставится после списка параметров и перед двоеточием:

def count_titles(titles: list[str]) -> int:
    return len(titles)
Здесь -> int говорит: «ожидается, что функция вернёт int». Аннотации опциональны и сами по себе ничего в рантайме не проверяют — это метаданные. Краткая история оператора Идея аннотаций функций впервые появилась в PEP 3107 (Function Annotations), который ввёл возможность добавлять произвольные метаданные к параметрам и к возвращаемому значению. На базе этой синтаксики PEP 484 затем ввёл систему типовых подсказок (type hints) для Python, сделав их стандартной практикой для тех, кто хочет статической проверки типов. Все эти дополнения остались опциональными — сам интерпретатор не будет выбрасывать ошибки, если аннотации не совпадают с фактическим типом во время выполнения. Простой пример:

import random

def get_game_recommendation(titles: list[str]) -> str:
    return random.choice(titles)

games = ["Minecraft", "Cyberpunk 2077", "The Witcher 3", "Elden Ring"]
recommendation = get_game_recommendation(games)
print(f"Рекомендуемая игра: {recommendation}") # Например, Minecraft
print(f"Тип возвращаемого значения: {type(recommendation).__name__}") # str
Что происходит, если функция возвращает другой тип? Python сам по себе не будет проверять, совпадает ли реальный возвращаемый тип с аннотацией — код просто выполнится. Но когда вы используете статический анализатор типов (например, mypy) или линтер, несоответствие будет обнаружено и выведет предупреждение / ошибку. Это ключевая идея: аннотации дают выгоду при статической проверке, CI и чтении кода, но не изменяют семантику программы во время выполнения. Какие типы можно указывать после ->? Почти любые: 🔘 простые встроенные (int, str, bool), 🔘 коллекции (list[str], dict[str, int]), 🔘 собственные классы и проч. Где ещё применяются стрелки и аннотации? Хотя наиболее часто -> встречается в объявлениях функций, аннотации — это часть более широкой системы типизации в Python. Типы используются для: 🔘 аннотаций параметров функций; 🔘 переменных и атрибутов классов (PEP 526); 🔘 аннотаций методов, Callable, Protocol и т.д.; 🔘 документации и автодополнения в IDE. Инструменты типа mypy, pyright, IDE (PyCharm, VS Code) и линтеры используют аннотации, чтобы находить ошибки и улучшать подсказки. Ограничения и подводные камни 🔘 Аннотации не выполняются: они не гарантия корректности в рантайме; 🔘 Сложные типы для сложной структуры данных или динамических конструкций типы могут стать громоздкими; иногда приходится балансировать читабельность и строгость; #основы @zen_of_python

​​Пост для питонисток: история PyLadies Но история сообщества Python — это не только код. Это ещё и путь к тому, чтобы люди разного пола и разного опыта могли почувствовать себя в нём своими. Одним из главных шагов в этом направлении стало появление PyLadies. От футболки с надписью «Python is for girls» к первому шагу На заре популярности Python о гендерном балансе в сообществе почти не задумывались. Даже сама Python Software Foundation (PSF), по словам одного из участников документального фильма, состояла «исключительно из белых мужчин». Даже когда Гвидо ван Россум на одной из PyCon публично заявил, что в PSF нужны женщины, ситуация почти не сдвинулась. В кулуарах и списках рассылки обсуждали код, но не то, как привлечь к этому коду новые голоса. Прошло время, и выяснилось: простого заявления мало. Сообщество не менялось. Новые женщины-разработчицы по-прежнему чувствовали себя изолированными, а в «ядре» Python не было ни одной из них. Только когда сам Гвидо решился на личное участие, ситуация начала меняться. Он взял на себя роль ментора для разработчицы Мариатты Виджайа, которая сначала сомневалась, «достойна ли» просить о поддержке создателя языка. Менторство Гвидо помогло ей преодолеть барьер и в итоге стать одной из первых женщин — Python Core Developers. Сегодня именно две женщины, включая Мариатту, входят в PSF. Порой, первым действовать должен начать глава. PyLadies сегодня Для крупных городов и даже целых стран начали создаваться локальные отделения: Pyadies Moscow, PyLadies Kazan, PyLadies Saint Petersburg. Только в этих сообществах, по мнению админа, сейчас как-то слишком тихо. PyLadies не только увеличили долю женщин-спикеров на PyCon (с 1% в 2011 году до 40% в 2016-м), но и изменили саму культуру Python. #факт @zen_of_python

Кратко о современном деплое: контейнеризация, оркестрация и непрерывная доставка для вашего приложения Развёртывание: это про
Кратко о современном деплое: контейнеризация, оркестрация и непрерывная доставка для вашего приложения Развёртывание: это процесс, при котором ваше приложение становится доступно для пользователей. Современный деплой использует инструменты и пайплайны для обеспечения стабильности, скорости и надежности. Ниже попытались разложить всё по полочкам 👇
Docker (Контейнеризация) 🔘 Представьте Docker как транспортный контейнер для софта. 🔘 Он упаковывает код, библиотеки и зависимости так, чтобы приложение одинаково работало в любой среде. 🔘 Плюсы: портативность, изоляция и одинаковое поведение в dev-, staging- и production-средах. Kubernetes (Оркестрация) 🔘 Когда контейнеров становится много, нужен управляющий. 🔘 Kubernetes — это как портовая служба, которая управляет контейнерами: масштабирует, перезапускает, балансирует нагрузку. 🔘 Обеспечивает балансировку нагрузки, масштабирование, поэтапные обновления и самовосстановление контейнерных приложений. CI/CD (Непрерывная интеграция и доставка) 🔘 CI — это как проверка каждого продукта перед отправкой с завода: тесты запускаются автоматически при каждом пуше кода. 🔘 CD — это система доставки: одобренные изменения автоматически едут в production. 🔘 Плюсы: более быстрые релизы, меньше багов, проще командная работа. Аналогия 🔘 Docker — Запечатанная коробка с вашим товаром. 🔘 Kubernetes — Логистическая компания, которая организует и доставляет все коробки по назначению. 🔘 CI/CD — Конвейер, на котором коробки непрерывно отправляются дальше без задержек.

​​YTSage | Скачиватель с YouTube Инструмент с несложным GUI на PySide6 c yt-dlp под капотом. Позволяет выбрать HD-качество, извлечь субтитры. Поддерживает скачивание плейлистов с возможностью выбрать конкретные видео перед загрузкой. #инструмент @zen_of_python

​​python-dateutil | datetime, который смог Ультрапопулярное (если верить рейтингу PyPi) расширение стандартного модуля datetime, поддерживает: — Вычисление «следующего X»: удобно находим даты следующего понедельника или последней недели месяца; — Относительные дельты: вычисляем разницу между двумя датами не только в секундах, но и в понятных календарных единицах (например, «2 месяца и 5 дней»); — Рекуррентные даты (повторяющиеся события) Поддерживается генерация серий дат по очень гибким правилам, расширяющим стандарт iCalendar (например: «каждый второй вторник месяца до конца года») и многое другое. Еще бы русский язык поддерживала, цены бы не было! #инструмент @zen_of_python

​​Алгоритмы и структуры данных на Python Уже ставшая классикой, книга поможет вам освоить алгоритмическое мышление. Помимо основ, вы познакомитесь с алгоритмами сортировки, поиска, деревьями, графами, динамическим программированием и жадными методами — всё написано с акцентом на Python-реализацию. Сильная сторона книги — реальные проекты: от простого калькулятора до системы обнаружения плагиата. Независимо от вашего уровня, вы найдёте в ней полезные идеи для укрепления навыков и расширения понимания алгоритмов. #обучение @zen_of_python

😊 Как организовать работу с данными, чтобы не утонуть в бюрократии? 😊 Какие подводные камни ждут при миграции всего банка в
😊 Как организовать работу с данными, чтобы не утонуть в бюрократии? 😊 Какие подводные камни ждут при миграции всего банка в облако? 😊 Как силами NLP в 30 раз ускорить обработку клиентских обращений? В гайдах для начинающих на такие вопросы вряд ли найдется ответ. А вот в телеграм-канале OTP Tech точно найдется наглядный разбор. В OTP Tech вы получите реальный опыт внедрения сложных решений в продакшен крупного финтеха. Ну и просто фановый интерактив, который поможет разгрузить голову. Если вы разрабатываете, проектируете или администрируете и хотите смотреть дальше хеллоу ворлдов — вам будет здесь интересно. Присоединяйтесь: @otp_tech