Python Academy
前往频道在 Telegram
Python Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
显示更多📈 Telegram 频道 Python Academy 的分析概览
频道 Python Academy (@python_academy) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 44 512 名订阅者,在 技术与应用 类别中位列第 3 049,并在 俄罗斯 地区排名第 14 343 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 44 512 名订阅者。
根据 09 六月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -112,过去 24 小时变化为 -12,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 5.55%。内容发布后 24 小时内通常能获得 2.69% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 2 471 次浏览,首日通常累积 1 196 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 4。
- 主题关注点: 内容集中在 строка, модуль, документация, taskiq, yaml 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Python Academy — один канал вместо тысячи учебников
Чат канала: @python_academy_chat
Сотрудничество: @zubar89
Канал включён в перечень РКН: https://rkn.link/TVu”
凭借高频更新(最新数据采集于 10 六月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
44 512
订阅者
-1224 小时
+457 天
-11230 天
帖子存档
44 512
Режим разработки
Оказывается, еще в Python 3.7 появилась возможность запускать скрипты со специальным флагом
-X для указания различных вариантов реализации.
Например, -X dev запускает скрипт в режиме разработки с функциями отладки и runtime-проверки, которые не используются по умолчанию из-за своей медлительности.
Также этот режим выводит дополнительные предупреждения в следующих случаях:
— Незакрытые файлы;
— Unawaited корутины;
— Неизвестная кодировка для str.encode;
— Проблемы с выделением памяти.
В целом, классная штука и имеет смысл периодически запускать скрипты в таком режиме, чтобы не упустить никакие баги.
#python44 512
Дробные числа
По умолчанию числа с плавающей точкой используют память привычным образом, то есть они хранятся в двоичном виде. Это означает, что вы обычно работаете с приблизительными значениями, а не точными.
Можно использовать тип данных
Decimal, который предоставит намного большую точность, но и его может не хватить в некоторых случаях.
Поэтому для идеальных вычислений лучше использовать Fraction, который представляет и хранит число в виде рациональной дроби.
#числа #fraction44 512
Вызов программ операционной системы
sh — это полноценный интерфейс, как альтернатива
subprocess, который позволяет вызывать любую программу, как если бы это была обычная функция.
Все запускаемые команды импортируются, как обычные функции, но функциями не являются, а лишь динамически обращаются к командам системы. Таким образом мы можем по сути обратиться к любой программе в системе.
sh полагается на системные вызовы Unix и работает только в Unix-подобных операционных системах, т.е. данный модуль не подойдет для работы с Windows.
Для обращения к командам программы и передать набор аргументов команды, мы можем передать их как обычные аргументы функции.
Также в модуле реализована функция which, которая находит полный путь до программы либо возвращает None, если программа не найдена.
#sh44 512
Ты ещё не принял участие в соревнованиях по спортивному программированию?
Ребята на фото уже приняли и получили свои денежные призы, а также предложение о работе от партнёров соревнований.
Подписывайтесь на канал Федерации спортивного программирования, чтобы быть в курсе событий и не пропустить следующее соревнование - @fsprussia
44 512
Официальное упорядочивание словарей
Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.
Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.
Однако это был просто побочный результат реализации, не зафиксированный в стандарте. Новый Python оформил его официально. Теперь можно быть уверенным в сохранении порядка вставки.
#словари
44 512
Многопоточность
В модуле
threading новый поток выполнения может начинаться с нового threading.Thread и присвоения ему функции для выполнения.
Параметр target ссылается на функцию (или вызываемый объект), который будет работать. Нить не начнет выполнение до start, также не будет вызываться Thread объекта.
Когда my_thread завершается, вызов start выкинет исключение RuntimeError. Если вы хотите запустить Thread в фоновом режиме, то передавайте daemon=True или установите my_thread.daemon в True перед вызовом start().
#потоки #многопоточность44 512
Частичное применение
Сегодня поговорим об одном интересном концепте из области функционального программирования. Использовать будем функцию
partial из стандартной библиотеки functools.
Предоставление функции меньшего количества аргументов, чем она ожидает, называется частичным применением функций.
Другими словами, это такая функция, которая принимает другую функцию с несколькими параметрами и возвращает функцию, но уже с меньшим количеством параметров.
#functools44 512
Список импортов по умолчанию
Для ограничения импорта переменных, функций и классов по умолчанию можно использовать список
__all__, в который записываются названия объектов, которые будут подключены.
Таким образом, при импорте вида from module import * из модуля c подобной записью подключатся только объекты с названиями из списка __all__.
Тем не менее, в примере выше импортировать функцию foo из такого модуля всё ещё можно, например, с помощью записи from module import foo.
#модули44 512
Временные файлы
В стандартной библиотеке Python есть модуль
tempfile, который содержит классы и методы для корректной работы со временными файлами и директориями.
Функция TemporaryFile создает временный файл в системной директории и возвращает файлоподобный объект.
Созданный временный файл будет автоматически удален по закрытию файла или при выходе из контекстного менеджера.
Также другие процессы и приложения не смогут получить доступ к этому временному файлу.
#tempfile44 512
⚡️ Стартовал прием заявок на Технологический конкурс НТИ Up Great «Экстренный поиск»!
Участникам предстоит преодолеть комплексный технологический барьер, предусматривающий разработку технологий и технических решений, объединенных в единую систему, позволяющую эффективно использовать техническое зрение при поиске пропавших людей с применением беспилотных воздушных судов (БВС).
На первом этапе (Сателлит №1) участникам необходимо разработать программное решение для поиска объектов (людей) на изображениях, полученных с БВС.
Призовой фонд Сателлита №1 составляет 5 млн руб.
Лучшим командам, удовлетворяющим требованиям технического регламента, организаторами будут предоставлены БВС для участия во втором этапе (Сателлит №2) и финале конкурса.
Призерами и победителями могут стать только налоговые резиденты РФ.
📲 Заявки на Сателлит № 1 принимаются до 12 июня 2023 г. по ссылке.
Конкурс организуется совместно МФТИ, Фондом НТИ и добровольческим поисково-спасательным отрядом «ЛизаАлерт». Общий призовой фонд составляет 135 млн руб.
44 512
⚡️ Стартовал прием заявок на Технологический конкурс НТИ Up Great «Экстренный поиск»!
Участникам предстоит преодолеть комплексный технологический барьер, предусматривающий разработку технологий и технических решений, объединенных в единую систему, позволяющую эффективно использовать техническое зрение при поиске пропавших людей с применением беспилотных воздушных судов (БВС).
На первом этапе (Сателлит №1) участникам необходимо разработать программное решение для поиска объектов (людей) на изображениях, полученных с БВС.
Призовой фонд Сателлита №1 составляет 5 млн руб.
Лучшим командам, удовлетворяющим требованиям технического регламента, организаторами будут предоставлены БВС для участия во втором этапе (Сателлит №2) и финале конкурса.
Призерами и победителями могут стать только налоговые резиденты РФ.
📲 Заявки на Сателлит № 1 принимаются до 12 июня 2023 г. по ссылке.
Конкурс организуется совместно МФТИ, Фондом НТИ и добровольческим поисково-спасательным отрядом «ЛизаАлерт». Общий призовой фонд составляет 135 млн руб.
44 512
Отлавливаем баги с assert
При выполнении инструкции
assert с логическим выражением, результат которого равен True, ничего не произойдет.
Но если попробовать выполнить инструкцию assert с логическим выражением, которое равно False, то будет сгенерировано исключение AssertionError.
Исключения AssertionError предназначены скорее для отладки. При написании программ на этапе разработки мы можем видеть, что делаем что-то не так (например, передали в метод некорректное значение).
Также не нужно, к примеру, обрабатывать пользовательский ввод и пытаться обработать исключение AssertionError блоком try-except.
Если в вашем коде будет очень много assert'ов, то это затронет и производительность программы.
#исключения #assert44 512
Генерация капчи
Сегодня покажем создание простейшей капчи. Для этого нам понадобится модуль
captcha и Pillow, который используется для создание изображений в captcha.
Все максимально просто, за нас по сути все делает уже написанный в модуле код. Создаем объект изображения ImageCaptcha, на который будет нанесен текст. После чего вызываем метод write с заданным текстом и именем файла, в который будет записано изображение.
#captcha44 512
У Яндекс Практикума есть бесплатный курс по основам анализа данных. В нём забавный интерактивный сюжет и много практики: четыре реальных кейса из разных областей. Вам предстоит:
— выяснить причину массовой поломки гаджетов,
— проверить окупаемость рекламы мобильного приложения,
— выбрать стратегию развития ИИ-стартапа,
— оценить эффективность роботов в службе поддержки.
На курсе вы напишете первый код на Python и поймёте, чем занимаются специалисты в сфере.
→ Приходите учиться бесплатно
Реклама АНО ДПО "Образовательные технологии Яндекса», ИНН:7704282033, erid: LjN8KaHT4
44 512
Вычисление размера объектов
Для вычисления размера объекта мы можем использовать функцию
getsizeof(object[, default]) из модуля sys. Так как в python все по сути является объектами, то и вычислить размер в памяти мы можем у любого такого объекта.
И хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.
Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .
Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора.
#getsizeof44 512
Паттерн проектирования Singleton
Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр.
Метод
__new__ вызывается для создания экземпляра класса, перед вызовом __init__. На вход первым аргументом метод принимает сам класс, а возвращать должен уже экземпляр (даже можно экземпляр и другого класса).
В примере мы проверяем, есть ли значение у атрибута instance. Если нет, то присваиваем атрибуту экземпляр этого же класса. А если уже экземпляр создан, то просто его возвращаем.
То есть при вызове конструктора класса Singleton, будет возвращаться один и тот же объект из памяти.
#классы #паттерны44 512
Превращаем PDF в текст
Думаю, все периодические работают с PDF-документами. И зачастую это ручная и скучная работа. Но Python может автоматизировать даже такую рутинную задачу.
Модуль
pdftotext создан именно для работы с документами в PDF формате. Устанавливается он через пакетный менеджер pip, а использовать его проще простого. Все основные операции представлены на картинке выше.
Кстати, здесь ещё интересно то, что исходный код модуля написан на C++. Поэтому есть небольшая вероятность, что придётся повоевать с зависимостями.
#pdftotext44 512
Порядок разрешения методов
В Python существует так называемый Method Resolution Order (MRO), или порядок разрешения методов в классе. Всё, что вам нужно знать – это порядок, в котором Python ищет нужный атрибут или метод.
Этот порядок можно получить при помощи атрибута
__mro__. Он говорит о том, что если мы в примере выше попробуем обратиться к атрибуту value, Python будет искать сначала в классе A, далее в B, затем в C и в самом конце в object.
Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1.
#классы44 512
Repost from Не баг, а фича
Айтишники по всей Москве теперь сталкиваются с любопытными задачами прямо в метро. Яндекс разместил баннеры, в каждом из которых скрыта какая-то ошибка.
Что это за ошибка — очевидно далеко не всегда. Люди фоткают баннеры и присылают друг другу, вместе решая задачки.
@bugnotfeature
44 512
Метод join у строк
У строк есть полезный метод
str.join(), который принимает на вход итерируемый объект, элементами которого также должны быть строки.
Как результат получаем новую строку, которая является объединением всех элементов. При этом они разделены строкой, к которой изначально применялся метод.
Проще говоря, если применить к строке этот метод, то она станет разделителем для элементов в новой строке.
#строки
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
