en
Feedback
Python Academy

Python Academy

Open in Telegram

Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu

Show more

📈 Analytical overview of Telegram channel Python Academy

Channel Python Academy (@python_academy) in the Russian language segment is an active participant. Currently, the community unites 44 518 subscribers, ranking 2 928 in the Technologies & Applications category and 14 043 in the Russia region.

📊 Audience metrics and dynamics

Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 44 518 subscribers.

According to the latest data from 28 August, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by 162 over the last 30 days and by -3 over the last 24 hours, overall reach remains high.

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 4.89%. Within the first 24 hours after publication, content typically collects 2.35% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 2 179 views. Within the first day, a publication typically gains 1 046 views.
  • Reactions and interaction: The audience actively supports content: the average number of reactions per post is 4.
  • Thematic interests: Content is focused on key topics such as строка, модуль, документация, taskiq, yaml.

📝 Description and content policy

The author describes the resource as a platform for expressing subjective opinions:
Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu

Thanks to the high frequency of updates (latest data received on 29 August, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.

44 518
Subscribers
-324 hours
-707 days
+16230 days
Posts Archive
Порядок разрешения методов В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в
Порядок разрешения методов В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в классе. Всё, что вам нужно знать – это порядок, в котором Python ищет нужный атрибут или метод. Этот порядок можно получить при помощи атрибута __mro__. Он говорит о том, что если мы в примере выше попробуем обратиться к атрибуту value, Python будет искать сначала в классе A, далее в B, затем в C и в самом конце в object.  Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1. #классы

Как менялась разработка на Python и что нас ждёт дальше 📆 19 декабря собираем предновогодний митап от Яндекса, чтобы подвест
Как менялась разработка на Python и что нас ждёт дальше 📆 19 декабря собираем предновогодний митап от Яндекса, чтобы подвести итоги 2024 года. Вспомним об интересных новостях, связанных с языком: 🔸 Обсудим Python 3.12, о котором говорили в прошлом году, и подумаем, какие ожидания оправдались, а какие нет 🔸 Посмотрим на версию 3.13, Faster CPython, jit и nogil А ещё поговорим о трендах в архитектуре и развитии бэкенд-разработчика на круглом столе с экспертами: 🔸 Николаем Хитровым, тимлидом в Точке 🔸 Евгением Афонасьевым, тимлидом из Авито 🔸 Никитой Соболевым, опенсорс-разработчиком 🔸 Сергеем Яхницким, техлидом в Техплатформе 🔸 Александром Букиным, основателем Pytup ⏭️ Регистрируйтесь на встречу в Москве или подключайтесь к трансляции, где бы вы ни были.

Хэширование Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное зна
Хэширование Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное значение должно иметь свой собственный хэш. Для хэширования значений есть встроенная функция hash(). Используется она в основном для сравнения значений разных объектов — сравнивать хэши легче и выгоднее. Но изменяемые объекты по типу списков и словарей нельзя хэшировать — интерпретатор выбросит соответствующую ошибку. Здесь, кстати, есть две пасхалки. Хэш бесконечности равен перым цифрам числа Пи, а хэш Not a Number равен нулю. А еще случаются коллизии: например, хэши чисел -1 и -2 одинаковы. #hash

Удобная работа с файловыми путями В стандартной библиотеке есть максимально удобный пакет pathlib, позволяющий осуществлять р
Удобная работа с файловыми путями В стандартной библиотеке есть максимально удобный пакет pathlib, позволяющий осуществлять различную работу с файловыми путями. Для представления пути к файлу есть класс Path, с объектами которого уже можно производить операции. Например, методы exists() и is_dir() проверяют, существует ли файл и является ли он директорией. Но самой классной фичей является замена os.path.join() на более удобный и элегантный вариант с использованием слэшей, как показано на картинке. Таким образом, пакет pathlib может стать частичной заменой os в некоторых случаях при работе с файловыми путями. #pathlib

Устроиться аналитиком в Яндекс за выходные 7–8 декабря проводим Weekend Offer Analytics. До 4 декабря оставьте заявку на учас
Устроиться аналитиком в Яндекс за выходные 7–8 декабря проводим Weekend Offer Analytics. До 4 декабря оставьте заявку на участие, 7 декабря пройдите технические собеседования, а 8 декабря познакомьтесь с командами и получите офер. В мероприятии участвует 7 команд: Crowd, Карты, Поиск, YaGPT 2, Автономный транспорт, Реклама и Ecom-сценарии. Вы сможете пообщаться с менеджерами и выбрать проект, который покажется самым интересным. Нанимаем в офисы России и Республики Беларусь. Узнать подробности и зарегистрироваться можно здесь.

Операторы множеств Множество — это коллекция, где все элементы уникальны. То есть одно и то же значение не может повторяться
Операторы множеств Множество — это коллекция, где все элементы уникальны. То есть одно и то же значение не может повторяться дважды. Помимо обычных методов, у множеств реализована поддержка различных операторов: объединение, пересечение, симметрическая разность, обычная разность и некоторые другие. Примеры этих операторов можете посмотреть выше на картинке. Реализовано подобное поведение с помощью магических методов, про которые уже не раз говорили на канале. #множества

Временные файлы В стандартной библиотеке Python есть модуль tempfile, который содержит классы и методы для корректной работы
Временные файлы В стандартной библиотеке Python есть модуль tempfile, который содержит классы и методы для корректной работы со временными файлами и директориями. Функция TemporaryFile создает временный файл в системной директории и возвращает файлоподобный объект. Созданный временный файл будет автоматически удален по закрытию файла или при выходе из контекстного менеджера. Также другие процессы и приложения не смогут получить доступ к этому временному файлу. #tempfile

Отлавливаем ошибки с помощью assert Инструкция assert принимает логическое выражение и необязательное сообщение. Она использу
Отлавливаем ошибки с помощью assert Инструкция assert принимает логическое выражение и необязательное сообщение. Она используется для проверки типов, значений аргумента и вывода функции, а также для отладки, поскольку останавливает программу в случае ошибки. Если выполнить инструкцию assert с логическим выражением, результат которого равен True, ничего не произойдет. Но в случае с False будет сгенерировано исключение AssertionError. Однако не нужно пытаться обработать исключение AssertionError блоком try-except. В таком случае assert теряет свой смысл. В примере мы проверили, является ли переданный аргумент числовым типом данных. Если не является, то будет вызвано исключение и выведено указанное сообщение. #исключения #assert

Not a Number В модуле math есть особый объект, который называется NaN (Not a Number). Эти объекты NaN не уникальны, и даже не
Not a Number В модуле math есть особый объект, который называется NaN (Not a Number). Эти объекты NaN не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников. Например можно создать подобный объект, просто передав строку 'nan' во float. Кстати говоря, это значит что вы можете использовать NaN в качестве ключа в словаре (хотя мы и не советуем это делать). #nan #tips

Красивый вывод таблиц Недавно нам понадобилось логировать часть базы данных. И тут мы вспомнили про прекрасный модуль prettyt
Красивый вывод таблиц Недавно нам понадобилось логировать часть базы данных. И тут мы вспомнили про прекрасный модуль prettytable, который позволяет красиво выводить таблицы. Итак, имена столбцов задается с помощью атрибута table.field_names. А добавлять строки с данными в таблицу можно методом table.add_row([]), передавая туда список элементов. Но даже если вы не фанат командной строки, то иногда нужно сохранить отчет о работе вашей программы в текстовый файл. В таком случае можно сохранить саму таблицу, вызвав метод table.get_string(). #трюки #prettytable

Важное про цифры и Юникод 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 — не единственные символы, которые считаются цифрами. Python следует п
Важное про цифры и Юникод 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 — не единственные символы, которые считаются цифрами. Python следует правилам Юникода и обрабатывает несколько сотен символов как цифры. Полный список находится здесь. Это крайне важно знать, потому что эти символы влияют на такие функции, как int, unicode.isdecimal и даже re.match. Думаю, в один момент это знание сэкономит вам время на исправление "бага" с такими странными символами. Предупрежден — значит вооружен. #числа #юникод

Разница между == и is Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использован
Разница между == и is Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использования == и is в приложениях могут возникнуть странные ошибки. Оператор == проверяет равенство значений двух объектов. А оператор is проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти. Но Python в целях производительности кеширует малые числа и короткие строки, поэтому возможны некоторые казусы, как в примере выше. #тонкости

В Центральном университете начался набор на программу бакалавриата 2025 года. Для будущих студентов вуза стартовал конкурс на получение грантов. Ими можно будет оплатить до 100% обучения. Принять участие могут старшеклассники и учащиеся старших курсов колледжей. Проходить конкурс будет ежемесячно до августа 2025 года. Конкурс проводится в онлайн и офлайн-форматах и состоит из двух этапов. Базовые знания математики, логики и аналитического мышления проверяются онлайн, а в бизнес-игре оцениваются гибкие навыки, в том числе мотивация, коммуникативные и лидерские качества. В рамках набора абитуриенты поучаствуют в собственных мероприятиях Центрального университета - ИТ-буткемпах и хакатонах, где смогут проявить полученные знания и навыки. Для лучшего понимания возможного карьерного пути состоятся экскурсии в офисы ведущих высокотехнологичных компаний России, например, Т-Банк, VK и Авито.

Используйте dict.get() вместо dict[] Есть несколько способов получения значений из словарей, и даже по такой теме разработчик
Используйте dict.get() вместо dict[] Есть несколько способов получения значений из словарей, и даже по такой теме разработчики часто спорят. Многие получают значения по ключам через квадратные скобки, но если такого ключа нет, то будет вызвано исключение. Поэтому мы считаем, что лучше использовать метод get у словарей. Его основной плюс заключается в том, что он принимает опциональный аргумент, отвечающий за значение по умолчанию. Таким образом, если значение по ключу не найдено, то вернется дефолтное значение. В итоге, мы убираем возможные ошибки в случае, если нужных ключей в словаре нет. #python #dict

Ruff Ruff — Чрезвычайно быстрый линтер и форматер кода на Python, написанный на Rust. Основным преимуществом Ruff является ег
Ruff Ruff — Чрезвычайно быстрый линтер и форматер кода на Python, написанный на Rust. Основным преимуществом Ruff является его скорость. Ruff в 10-100 раз быстрее аналогов. В сравнении с flake8, автор заявляет о практически полном совпадении с набором правил инструмента и нативной реализацией популярных плагинов (flake8-bugbear и т.д.). Также Ruff совместим с Black «из коробки». Ruff может форматировать код. Например, он автоматически удаляет неиспользуемые импорты. Что касается сортировки и группировки строк импорта, то она практически идентична isort. #python #ruff

Получаем календарь В модуле calendar есть функция month(), которая вернет календарь указанного месяца в виде строки, как пока
Получаем календарь В модуле calendar есть функция month(), которая вернет календарь указанного месяца в виде строки, как показано в примере. А функция calendar() выдаст целый год. Если строки строки не устраивают, то в модуле есть много методов для получения самых разных итераторов. А еще там можно даже получить календарь в виде HTML. Кстати, модуль является встроенным, отдельно его устанавливать не нужно. #calendar

Прогресс выполнения программы Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, треб
Прогресс выполнения программы Индикаторы прогресса добавляют наглядности в скриптах, которые исполняют какие-то функции, требующие времени для выполнения. Модуль tqdm является простым и лаконичным вариантом. Привычный range можно заменить на trange для визуализации прогресса. А для итерации по какой-либо последовательности, достаточно просто передать её в функцию tqdm. Также модуль хорошо себя зарекомендовал и в Jupyter Notebook. Кстати, интересный факт – название tqdm произошло от арабского слова "taqaddum" (تقدّم), которое означает "прогресс," а также это ещё и сокращение от "я тебя сильно люблю" на испанском (te quiero demasiado). #модули #tqdm

Создаем контекстный менеджер с помощью декоратора Обычно протокол управления контекстом реализовывают с помощью класса и двух
Создаем контекстный менеджер с помощью декоратора Обычно протокол управления контекстом реализовывают с помощью класса и двух магических методов: __enter__ и __exit__. Но такой подход может показаться слегка сложным. Так вот, помимо написания своего класса, есть еще один способ создать контекстный менеджер — использовать декоратор @contextmanager из встроенного пакета contextlib. Первая часть функции tag, которая идёт до yield, выполняется при входе в блок with. Затем исполняется сам этот блок, а после этого завершается оставшаяся часть, которая идет после yield.  #contextlib

Порядок разрешения методов В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в
Порядок разрешения методов В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в классе. Всё, что вам нужно знать – это порядок, в котором Python ищет нужный атрибут или метод. Этот порядок можно получить при помощи атрибута __mro__. Он говорит о том, что если мы в примере выше попробуем обратиться к атрибуту value, Python будет искать сначала в классе A, далее в B, затем в C и в самом конце в object.  Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1. #классы

Разделители для целых чисел Трудно визуально различить целые числа подобные 10000000 и 100000000. Использовать запятые, как в
Разделители для целых чисел Трудно визуально различить целые числа подобные 10000000 и 100000000. Использовать запятые, как в английском языке, не получится. Но Python позволяет использовать нижнее подчеркивание как разделитель для улучшения читабельности. Например, 1_000_000 будет интерпретироваться как целое число 1000000. #числа