Python Academy
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 509 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 509 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.
@staticmethod. Такие методы привязаны к классу, а не объекту — в этом и есть основное отличие.
Такой тип методов не может модифицировать ни объект, ни сам класс. То есть передавать объект или класс и прописывать self или cls в аргументах не нужно.
Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.
#оопeval, но знаете ли вы о literal_eval? Вряд ли. Для безопасного исполнения выражений, содержащих исключительно литералы, вы можете делать так, как показано на картинке выше.
Между прочим, данная фича находится в языке уже очень давно.
#tips #evalos.fork() создаёт дочерний процесс в том же месте кода, вызывая системную функцию fork(), и возвращает PID (Process Identifier), который равен PID дочернего процесса в родительском процессе и нулю в новом.
Кстати, получается интересный случай, в коде примера выполняется и блок if, и else. Если не знать про os.fork() и посмотреть вывод подобного кода, то возникнет много вопросов.
#os #fork #процессыfrom, после которого требуется указать ещё одно исключение. Это исключение будет подвязано к вызванному в атрибут __cause__ (поддерживает запись).
В результате, если вызванное исключение не обработано, то на вывод будут отправлены оба исключения.
#exceptionPython, и хотим поделиться им с вами! Представляем вам icecream - библиотеку, которая упрощает отладку, улучшая вывод ваших данных.
Что такое icecream?
icecream - это легковесная библиотека для Python, которая предоставляет простые, но мощные инструменты для отслеживания и вывода значений переменных и данных в процессе выполнения кода. Этот инструмент полезен при отладке, тестировании и разработке, помогая вам лучше понять, что происходит в вашей программе.
Преимущества icecream перед стандартным print:
1. Читабельность и простота в использовании: icecream автоматически выводит имя переменной и ее значение, что делает вывод более понятным и читабельным.
2. Цветовая кодировка: icecream поддерживает цветовую кодировку вывода, что делает его более наглядным и удобным для анализа.
Настройка icecream:
icecream позволяет настраивать вывод, добавлять дополнительную информацию, и даже сохранять логи в файл. Вы можете настроить icecream в соответствии с вашими потребностями, делая вывод более информативным и удобным.
from icecream import ic, install
install(autodetect=True, includeContext=True)
number = 42
ic(number)
text = "Привет, мир!"
ic(text)
Это добавит контекст, такой как имя файла и номер строки, в вывод:
ic| <ipython-input-1-5a0d5d83d2d3>:1 in <module> - number: 42
ic| <ipython-input-1-5a0d5d83d2d3>:4 in <module> - text: 'Привет, мир!'
Автор идеи поста: @hexvel
Если у вас есть предложения для следующего поста, делитесь в комментариях!
#Python #logging #icecream from package import * будет подключены либо все модули и объекты модуля __init__.py, либо то, что находится в переменной __all__ в том же модуле __init__.py — подробнее про эту переменную было в посте ранее.
Также примечателен файл init.py, который раньше был обязателен для создания пакетов. С версии Python 3.3 его необходимость пропала. Однако его функциональность на этом не заканчиваются.
#модули #пакеты@classmethod, а сейчас рассмотрим @staticmethod.
@staticmethod можно воспринимать как метод, который "не знает, к какому классу относится". Он просто получает переданные аргументы, без неявного первого аргумента, и его определение не изменяется через наследование. Еще раз: статические методы прикреплены к классу лишь для удобства — и не могут менять состояние ни класса, ни его экземпляра.
Зачем использовать. Статические методы делают код более читабельным и повторно используемым. Его также удобнее использовать для импорта по сравнению с обычными функциями, поскольку функцию не нужно отдельно импортировать.
В чем же разница?
@classmethod используется в суперклассе для определения того, как метод должен вести себя, когда он вызывается разными дочерними классами.
@staticmethod используется, когда мы хотим вернуть объект, независимо от вызываемого дочернего класса.@classmethod, а сейчас рассмотрим @staticmethod.
@staticmethod можно воспринимать как метод, который "не знает, к какому классу относится". Он просто получает переданные аргументы, без неявного первого аргумента, и его определение не изменяется через наследование. Еще раз: статические методы прикреплены к классу лишь для удобства — и не могут менять состояние ни класса, ни его экземпляра.
Зачем использовать. Статические методы делают код более читабельным и повторно используемым. Его также удобнее использовать для импорта по сравнению с обычными функциями, поскольку функцию не нужно отдельно импортировать.
В чем же разница?
@classmethod используется в суперклассе для определения того, как метод должен вести себя, когда он вызывается разными дочерними классами.
@staticmethod используется, когда мы хотим вернуть объект, независимо от вызываемого дочернего класса.main(), с которых начинается выполнение программы. Но в Python весь код исполняется построчно.
Как вариант, многие пишут основную логику программы в обычную функцию main(), а вызывают ее только в условии if __name__ == '__main__'. Здесь стоит объяснить отдельно про то, что такое __name__.
Переменная __name__ — это специальная переменная, которая будет равна '__main__', только если файл запускается как основная программа. А при импорте в качестве модуля выставляется равной имени модуля.
Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает.
#main__lt__, __le__, __eq__, __ne__, __gt__, __ge__.
Про то, что делает каждый из них расскажем отдельным постом, но сейчас покажем, как можно сильно упростить реализацию подобного класса. Для этого можно использовать декоратор total_ordering из пакета functools.
В таком случае достаточно реализовать в классе только __lt__ и __eq__. Эти два метода являются минимумом, который нужен декоратору для конструирования остальных методов.
#классы