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 542 subscribers, ranking 3 037 in the Technologies & Applications category and 14 315 in the Russia region.
📊 Audience metrics and dynamics
Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 44 542 subscribers.
According to the latest data from 05 June, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by -28 over the last 30 days and by 1 over the last 24 hours, overall reach remains high.
- Verification status: Not verified
- Engagement rate (ER): The average audience engagement rate is 5.45%. Within the first 24 hours after publication, content typically collects 2.59% reactions from the total number of subscribers.
- Post reach: On average, each post receives 2 429 views. Within the first day, a publication typically gains 1 155 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 07 June, 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.
hashlib предоставляет алгоритмы хеширования, которые позволяют создавать уникальные хеш-суммы для данных. Это полезно для проверки целостности файлов, хранения паролей в безопасной форме и других задач безопасности данных.
Пример кода:
import hashlib
# Пример хеширования строки с использованием SHA-256
data_to_hash = "Hello, World!"
hashed_data = hashlib.sha256(data_to_hash.encode()).hexdigest()
print(f"Исходные данные: {data_to_hash}")
print(f"Хеш-сумма (SHA-256): {hashed_data}")
В этом примере мы используем алгоритм SHA-256 из библиотеки hashlib для создания хеш-суммы строки "Hello, World!". Результат выводится в шестнадцатеричном формате.
Библиотека hashlib является одним из лучших инструментов для обеспечения безопасности данных в Python. Путем использования различных алгоритмов хеширования, таких как MD5, SHA-256 и других, вы можете обеспечить целостность данных и повысить уровень безопасности ваших приложений.
#python #hashlib__lt__, __le__, __eq__, __ne__, __gt__, __ge__.
Про то, что делает каждый из них расскажем отдельным постом, но сейчас покажем, как можно сильно упростить реализацию подобного класса. Для этого можно использовать декоратор total_ordering из пакета functools.
В таком случае достаточно реализовать в классе только __lt__ и __eq__. Эти два метода являются минимумом, который нужен декоратору для конструирования остальных методов.
#классыtime из модуля time, которая возвращает текущее время в формате Unix.
Перед исполнением нашего кода сохраним начальное время, а после — конечное. Путем вычета первого из второго и получим время исполнения программы.
Использование time.time() — не самый точный и лучший вариант, но, например, для быстрого сравнения двух разных частей кода подходит хорошо.
#timeenum. Подобные перечисления удобно использовать для хранения списков констант.
Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность.
Также можно задать геттер через @property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex.
#enum__mro__. Он говорит о том, что если мы в примере выше попробуем обратиться к атрибуту value, Python будет искать сначала в классе A, далее в B, затем в C и в самом конце в object.
Отсюда становится понятно, что артибут первее будет найден именно в классе B и равен он будет значению 1.
#классыJMESpath, который позволяет декларативно указать, как извлекать элементы из документа JSON.
Основные примеры использования показаны на картинке, там нет ничего сложного. Метод search принимает паттерн, по которому требуется извлечь данные, а также словарь (который в общем-то похож на JSON).
Вообще возможностей у пакета достаточно, поэтому он достоен изучения и применения в проектах. Подробнее советую почитать в документации.
#json #jmespathdict.get() — это метод словаря, который используется для получения значения по заданному ключу. Однако, в отличие от обращения к элементу словаря с использованием квадратных скобок (dict[key]), метод get() предоставляет дополнительную возможность задать значение по умолчанию, которое будет возвращено, если ключ не найден в словаре.
Синтаксис метода get() выглядит так:
value = dict.get(key, default)
key: Ключ, по которому производится поиск в словаре.
default (необязательный): Значение, которое будет возвращено, если ключ не найден в словаре. Если default не указан, и ключ не найден, метод вернет None.
#pythonPython с использованием библиотек Alembic и SQLAlchemy. Эта связка инструментов позволяет легко мигрировать схему базы данных, управлять версиями и обеспечивает удобный способ разработки и поддержки приложений.
Что такое Alembic и SQLAlchemy?
SQLAlchemy - это мощная библиотека для работы с базами данных в Python. Она предоставляет ORM (Object-Relational Mapping), что делает работу с базой данных более Pythonic. Вы можете определять модели данных, выполнять запросы и манипулировать данными, используя чистый Python.
Alembic - это инструмент для управления миграциями базы данных. Он позволяет создавать и применять миграции для изменения структуры базы данных, такие как создание таблиц, добавление столбцов или изменение индексов.
Пример использования Alembic и SQLAlchemy:
1. Установка библиотек:
pip install sqlalchemy alembic2. Инициализация Alembic:
alembic init my_migration3. Определение моделей данных в
SQLAlchemy:
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
4. Создание миграции:
alembic revision --autogenerate -m "Create user table"5. Применение миграции:
alembic upgrade headТеперь вы можете легко управлять структурой базы данных, создавать новые миграции и применять их, чтобы обновить вашу базу данных. Полезные ссылки: - SQLAlchemy: https://www.sqlalchemy.org/ - Alembic: https://alembic.sqlalchemy.org/ #python #sqlalchemy #alembic #базаданных #миграции
textwrap.fill() — принимает текст и возвращает отформатированный текст, первая строка сохраняет свой отступ, а пробелы в начале каждой последующей строки вставляются в абзац.
textwrap.dedent() — используется для удаления общего префикса пробела из всех строк в тексте.
textwrap.indent() — используется для добавления текст префикса ко всем строкам в параграфе
#python #textwrappdb — это интерактивный отладчик Python, который позволяет пользователю управлять выполнением программы: перемещаться по коду, просматривать и изменять значения переменных, пошагово проходить через код, включая вложенные структуры, устанавливать точки остановок и выполнять другие типичные действия для отладки.
Этот модуль обладает интерфейсом командной строки, с помощью которого можно управлять выполнением кода на Python в реальном времени. Чтобы активировать режим pdb в вашей программе, достаточно добавить следующую строку кода.
#python #pdbasyncio - это библиотека, разработанная специально для асинхронного программирования и управления параллельными задачами. Она предоставляет инструменты для эффективной работы с асинхронными операциями, позволяя создавать быстрые и отзывчивые приложения.
Для начала работы с asyncio, вам необходимо импортировать библиотеку, и вы сразу получаете доступ к асинхронным функциям и ключевым словам, таким как async и await. Это делает возможным создание асинхронных функций, которые могут выполняться параллельно, без блокировки основного потока выполнения.
Одной из причин использовать asyncio является его способность эффективно обрабатывать большое количество параллельных задач, что делает его идеальным решением для сетевых операций, ввода/вывода и других операций, которые могут вызвать задержку. Вы можете легко создавать и использовать уже готовые асинхронные HTTP-клиенты (например, с использованием aiohttp и httpx), веб-серверы и веб-скраперы, которые будут быстро обрабатывать большие объемы данных.
Дополнительная информация о asyncio, такая как работа с очередями, ивент-лупы, обработка ошибок и другие возможности, доступна в официальной документации Python.MoviePy - это удобный пакет для выполнения различных задач по редактированию видео, включая обрезку и склейку клипов, добавление видеоэффектов и редактирование аудиодорожки.
Пакет достаточно прост в освоении, и базовые принципы его использования можно увидеть на примере. В данном случае, мы открываем два видеофайла, соединяем их в один, обрезаем получившийся клип, уменьшаем громкость звука и сохраняем итоговый результат.
Стоит учитывать, что обработка видео, особенно больших файлов, может занять значительное время.
MoviePy особенно полезен, когда необходимо автоматизировать обработку большого количества видео по единому алгоритму.
#python #moviepyspellchecker позволяет находить опечатки в тексте и даже дает возможные варианты исправлений.
Под капотом модуль использует алгоритм расстояния Левенштейна. А сам код основан на статье, написанной в блоге Питера Норвига. Короче, реализация интересная, советую поизучать.
Но даже если не вникать в подробности, то пакет использовать крайне легко. Примеры использования класса SpellChecker и его методов correction и candidates показаны на картинке.
Пакет поддерживает 6 языков, включая русский. Но за подробностями отправляю вас читать документацию.
#spellcheckermath.perm() используется для определения количества возможных способов выбора и расположения m элементов из набора n элементов. Этот метод включен в модуль math.
Он требует указания двух параметров: n — общее число элементов в наборе, и m — число элементов в каждой возможной выборке. Результатом выполнения функции является целочисленное значение, представляющее число таких перестановок. Если n меньше m, функция возвратит 0.
Пример использования: расчет количества перестановок трех элементов из пяти. Это демонстрирует, сколько существует вариантов формирования трехэлементных подмножеств из пятерки.
#pythonsetdefault() в Python возвращает значение по указанному ключу из словаря. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение.
Метод setdefault() имеет два параметра:
— Ключ, по которому необходимо получить значение.
— Значение по умолчанию, которое будет добавлено в словарь, если ключ отсутствует.
Если ключ присутствует в словаре, метод возвращает значение, связанное с этим ключом. Если ключ отсутствует в словаре, метод добавляет ключ в словарь со значением по умолчанию, а затем возвращает это значение.
#pythonPyppeteer — это Python-библиотека, позволяющая управлять браузером с помощью инструмента Puppeteer, изначально разработанного для Node.js. Puppeteer предоставляет возможность автоматизировать взаимодействие с веб-страницами, выполнять сценарии на основе браузера, делать скриншоты, создавать PDF-файлы и многое другое.
Пример использования Pyppeteer для выполнения поиска в Google и сохранения результатов в виде скриншота доступен на фото.
#python #pyppeteerresult = pow(x, y, z)где: x — основание степени, y — показатель степени, z (необязательный параметр) — модуль, по которому производится вычисление. Если z указан, то pow(x, y, z) возвращает (x y) % z. Если z не указан, то возвращается x y. #python
Python отсутствует оптимизация хвостовой рекурсии, что часто приводит к ошибке RecursionError при разработке рекурсивных алгоритмов.
Однако, используя модуль sys, можно узнать и даже изменить максимально допустимую глубину рекурсии. Несмотря на это, следует быть осторожным с увеличением лимита, так как каждый вызов рекурсии потребляет значительное количество памяти.
В большинстве случаев предпочтительнее использовать итеративные подходы, такие как циклы, вместо рекурсии.
#python #recursion
Available now! Telegram Research 2025 — the year's key insights 
