Python Academy
Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Показати більше📈 Аналітичний огляд Telegram-каналу Python Academy
Канал Python Academy (@python_academy) у мовному сегменті Російська є активним учасником. На даний момент спільнота об'єднує 44 508 підписників, посідаючи 3 046 місце в категорії Технології та додатки та 14 346 місце у регіоні Росія.
📊 Показники аудиторії та динаміка
З моменту свого створення невідомо, проект продемонстрував стрімке зростання, зібравши аудиторію у 44 508 підписників.
За останніми даними від 10 червня, 2026, канал демонструє стабільну активність. Хоча за останні 30 днів спостерігається зміна кількості учасників на -106, а за останні 24 години на -4, загальне охоплення залишається високим.
- Статус верифікації: Не верифікований
- Рівень залученості (ER): Середній показник залученості аудиторії становить 5.59%. Протягом перших 24 годин після публікації контент зазвичай збирає 2.66% реакцій від загальної кількості підписників.
- Охоплення публікацій: В середньому кожен допис отримує 2 487 переглядів. Протягом першої доби публікація в середньому набирає 1 184 переглядів.
- Реакції та взаємодія: Аудиторія активно підтримує контент: середня кількість реакцій на один пост – 5.
- Тематичні інтереси: Контент зосереджений навколо ключових тем, таких як строка, модуль, документация, taskiq, yaml.
📝 Опис та контентна політика
Автор описує ресурс як майданчик для висловлення суб'єктивної думки:
“Python Academy — один канал вместо тысячи учебников
Чат канала: @python_academy_chat
Сотрудничество: @zubar89
Канал включён в перечень РКН: https://rkn.link/TVu”
Завдяки високій частоті оновлень (останні дані отримано 11 червня, 2026), канал підтримує актуальність та високий рівень охоплення публікацій. Аналітика показує, що аудиторія активно взаємодіє з контентом, що робить його важливою точкою впливу в категорії Технології та додатки.
literal_eval() из модуля ast.
Данная функция поможет безопасно определить литеральный тип, а в случае если был передан не литерал, то выбросит исключение. Это можно использовать для оценки выражений из внешних источников при парсинге файлов, либо пользовательского ввода.
#ast #literal_evalcombinations: она позволяет составлять комбинации элементов из итерируемых объектов без повторений. Первый аргумент это сам объект, а второй — длина комбинации.
Для того, чтобы составить комбинацию с повторениями, используют функцию combinations_with_replacement. Делает она абсолютно все то же самое что и предыдущая, с одним исключением – теперь в комбинации могут быть повторы.
Ну и в заключение, рассмотрим функцию compress, применяющую "маску" из второго аргумента функции к первому. То есть, если в маске на этом месте стоит единица, то в исходном массиве элемент остается нетронутым, и наоборот.
#itertools__name__ и __doc__, нужные для документации функции.
Вместо значений данных атрибутов исходной функции мы будем получать значения функции обертки.
Для решения этой проблемы можно воспользоваться декоратором functools.wraps, применяя его к обертке нашего декоратора. В результате имя и сигнатура функции, передаваемой в декоратор, будут копироваться в обертку.
#декораторы #wraps__dict__ для хранения атрибутов, который создается по умолчанию при создании экземпляра класса. Данная особенность позволяет динамически в рантайме добавлять атрибуты, но от сюда появляются соответствующие проблемы с производительностью.
В случаях, когда мы сразу точно знаем все атрибуты, используемые в классе, мы можем воспользоваться атрибутом __slots__, который позволяет задать ограниченный список аргументов для класса. В этом случае словарь __dict__ не будет создаваться, что позволит сэкономить память и поднять производительность.
#class #slotsassert с логическим выражением, результат которого равен True, ничего не произойдет.
Но если попробовать выполнить инструкцию assert с логическим выражением, которое равно False, то будет сгенерировано исключение AssertionError.
Исключения AssertionError предназначены скорее для отладки. При написании программ на этапе разработки мы можем видеть, что делаем что-то не так (например, передали в метод некорректное значение).
Также не нужно, к примеру, обрабатывать пользовательский ввод и пытаться обработать исключение AssertionError блоком try-except.
Если в вашем коде будет очень много assert'ов, то это затронет и производительность программы.
#исключения #assertlambda <arguments>: <expression> . Сначала пишете ключевое слово lambda, далее аргументы через запятую, двоеточие и какое-то выражение, результат которого автоматически вернется.
Такие функции чаще всего используются, когда они больше нигде не понадобятся, то есть определять полноценную функцию нет смысла. Типичные примеры использования — map и filter.
#функции #lambdaargs и kwargs – общепринятые имена переменных, а разбирать мы будем звездочки перед ними.
В примере функция принимает обязательный аргумент value, а остальных аргументов она как бы не ожидает. В таком случае *args упаковывает все не именованные аргументы в кортеж, а **kwargs – все именованные в словарь.
Конструкция с *args, **kwargs получается достаточно полезной, если мы не знаем, кто и в каких целях будет использовать нашу функцию. То есть, мы можем запихнуть в аргументы практически что угодно.
#функцииtype можно получить тип объекта. Но не все так просто, по сути type служит динамической заменой инструкции class и позволяет создавать новые объекты типа во время исполнения.
Первый принимаемый аргумент является именем класса и становится атрибутом __name__; второй аргумент является кортежем с перечисленными базовыми типами и становится атрибутом __base__; словарь будет являться телом класса и станет атрибутом __dict__.
#type #classgetsizeof(object[, default]) из модуля sys. Так как в python все по сути является объектами, то и вычислить размер в памяти мы можем у любого такого объекта.
И хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.
Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .
Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора.
#getsizeofthis.
Но здесь забавно то, как этот модуль реализован: оригинальный текст зашифрован с помощью алгоритма ROT13 и декодируется на лету.
Такой подход противоречит философии Дзена, но некоторые считают, что сделано это намеренно. Любые правила имеют свои исключения и всегда следовать им не получится.
#zen
Вже доступно! Дослідження Telegram за 2025 — головні інсайти року 
