tgindex
Python Academy

Python Academy

Статистика

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

Последний пост
08:36
Последнее чтение
10:17
Постов за неделю
7
Всего постов
255
Тип
открытый
Язык
русский
Категория
Образование
В каталоге с
12 авг.
Подписчики
44 656
+64 за 4 дн.
Сутки
−8
−0,02%
Неделя
 
Месяц
 
Просмотров на пост
1 846
40 постов
Вовлечённость
4,1%
к подписчикам
Постов в день
1,0
всего 255
Упоминаний
2
каналов
Охват размещения
оценка
1/24сутки в ленте
1 415
1/48двое суток
1 621
1/72трое суток
1 748

Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.

Посты

  • 08:36434113

    Indico Indico — это мощная библиотека Python для извлечения информации из неструктурированных текстов, изображений и PDF-файлов. Она позволяет вам выполнять задачи обработки естественного языка (NLP), компьютерного зрения (CV) и машинного обучения (ML) с помощью простых и понятных API. https://pypi.org/project/indico/

  • 17:3590417

    Метод sets.issubset() Метод sets.issubset() позволяет проверить находится ли каждый элемент множества sets в последовательности other. Метод возвращает True, если множество sets является подмножеством итерируемого объекта other, если нет, то вернет False. Синтаксис: sets.issubset(other).

  • 14 авг.1 20027

    Познакомьтесь с IceCream: Улучшенным выводом в Python Hедавно мы наткнулись на потрясающий инструмент для отладки и разработки в Python, и хотим поделиться им с вами! Представляем вам 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: 'Привет, мир!' #Python #logging #icecream

  • 13 авг.1 43636

    ​​Сортировка пузырьком Для сортировки списков в Python уже есть встроенные функция sorted() и метод .sorted(), но достаточно важно самому знать хотя бы несколько реализаций. Суть алгоритма в том, что совершается несколько проходов по массиву. При проходе последовательно сравниваются пары элементов в массиве и в случае несоответствия выбранному порядку меняются местами. Если пары элементов находятся в верном порядке, то ничего не происходит. В результате первого прохода максимальный элемент окажется в конце, то есть всплывет словно пузырек. Затем все повторяется до того момента пока весь массив не будет отсортирован. Последний проход будет по отсортированному массиву. #списки #сортировка

  • 12 авг.1 59658

    Точка входа В некоторых языках программирования есть функции main(), с которых начинается выполнение программы. Но в Python весь код исполняется построчно. Как вариант, многие пишут основную логику программы в обычную функцию main(), а вызывают ее только в условии if __name__ == '__main__'. Здесь стоит объяснить отдельно про то, что такое __name__. Переменная __name__ — это специальная переменная, которая будет равна '__main__', только если файл запускается как основная программа. А при импорте в качестве модуля выставляется равной имени модуля. Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает. #main

  • 11 авг.1 70499

    Преобразования текста в аудио с помощью Python Для преобразования текста в аудио на Python можно использовать библиотеку gTTS (Google Text-to-Speech). В данном примере мы используем текст "Привет!» на русском языке, создаем объект gTTS и сохраняем аудиофайл "hello.mp3". Затем мы воспроизводим аудиофайл с помощью утилиты mpg321.

  • 10 авг.1 90148

    Проверяем скорость интернета Каждый хоть раз проверял скорость своего интернета на Speedtest. А у них, оказывается, есть не только сайт и приложения, но и пакет на Python для этого дела. У объекта класса Speedtest методы download() и upload() выдают соответственно скорость скачивания и загрузки данных. Методы отдают результат в байтах, поэтому для наглядности в примере я перевел все данные в мегабайты при выводе. #speedtest

  • 9 авг.1 79145

    Именованные кортежи Кортежи tuple, по своей сути, являются неизменяемыми списками. Структура данных удобная, но мы можем получать данные, используя только числовые индексы. Нет возможности дать имена отдельным элементам, сохранённым в кортеже. Это может повлиять на читаемость кода. И в таком случае используют именованные кортежи namedtuple из collections. Каждый объект в именованном кортеже может быть доступен через уникальный, удобный для чтения человеком, идентификатор. При этом вся функциональность от обычных кортежей сохраняется. #namedtuple

  • 8 авг.1 73247

    Вычисление размера объектов Для вычисления размера объекта мы можем использовать функцию getsizeof(object[, default]) из модуля sys. Так как в python все по сути является объектами, то и вычислить размер в памяти мы можем у любого такого объекта. И хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов. Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError . Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора. #getsizeof

  • 7 авг.1 61858

    Загрузка файлов асинхронно Если у нас есть список URL картинок для загрузки, использование простого цикла for позволит нам загрузить их последовательно, по одной за раз. Однако, для задач, включающих загрузку большого количества маленьких файлов, параллелизация может заметно ускорить процесс. Для параллелизации мы можем использовать ThreadPoolExecutor из модуля concurrent.futures. Этот инструмент позволяет выполнить функцию загрузки в нескольких параллельных потоках, где в конструкторе необходимо указать максимальное количество потоков для одновременного выполнения. С помощью метода .map(download, urls) можно развернуть функцию загрузки на каждый URL из списка, обеспечивая их параллельную обработку. Важно понимать, что так как загрузка файлов является IO-операцией, данный метод не ускоряет выполнение кода в прямом смысле, а скорее позволяет начать загрузку следующего файла, не ожидая завершения предыдущего. #python #threading

  • 7 авг.1 50353

    One Day Offer для Python-разработчиков! 15 августа открываем двери в команду Agent Execution Framework Команда создаёт платформу для GenAI-агентов в банке — чтобы ИИ надёжно работал в реальных финпроцессах: безопасно, под высокой нагрузкой и с пользой. Чем предстоит заниматься: • развивать backend на Python • подключать LLM, инструменты, базы знаний и RAG • строить пайплайны оценки качества агентов • участвовать в архитектуре и ревью кода Встречаемся 15 августа онлайн. Регистрируйся по ссылке

  • 7 авг.1 64234

    Преобразование аудиофайлов с помощью Python В Python существует множество способов для выполнения конвертации аудиофайлов из одного формата в другой. Одним из наиболее удобных инструментов для этого является модуль pydub. Этот модуль служит оболочкой для ffmpeg и предоставляет возможности по загрузке, редактированию и сохранению аудиофайлов в различных форматах, поддерживаемых ffmpeg. Для начала работы с файлом, используем метод from_ с указанием необходимого формата из класса AudioSegment, или же обратимся к более универсальному методу from_file, предоставляя путь к файлу и его формат. Когда файл загружен, для его конвертации и сохранения в желаемом формате применяем метод export объекта класса AudioSegment, созданного на предыдущем шаге. #python #pydub

  • 6 авг.1 83214

    Работаем с zip архивами Для упрощения работы с zip файлами можно использовать встроенный модуль zipfile. Если кто не помнит, то zip файл – это архив, содержащий сжатые файлы. Просмотреть содержимое архива можно с помощью функции printdir, а извлечь все файлы можно вызвав extractfile. Также этот модуль позволяет создавать свои zip архивы, но мы решили не усложнять пример, поэтому просто прикладываем ссылку на документацию. #zipfile

  • 5 авг.1 94225

    Константы пакета string Встроенный модуль string предоставляет расширенный функционал для работы со строками. Про форматируемые шаблоны из этого пакета мы рассказывали в прошлом посте. Сейчас поговорим про константы этого модуля. Из интересного стоит выделить ascii_letters, punctuation, digits и whitespace — символы ascii, знаки пунктуации, цифры и пробельные символы. Применение подобных констант может быть не очевидно с первого взгляда. Но подобные значения часто используются, например, в работе с алфавитом или в условном генераторе паролей. К тому же часто бывает, что разработчики делают костыли и создают свои собственные константы в коде вместо того, чтобы импортировать уже готовые из модуля string. #строки #string

  • 5 авг.1 85723

    Выходные, которые настроят твой IT-путь – Сбер. Среда Weekend, 15-16 августа Это нишевый фестиваль для своих: тех, кто уже в комьюнити, и тех, кто только ищет себя в IT. Мы создали три среды — ты точно найдёшь свою: • human.env — честные, смешные и местами беспощадные стендапы и рассказы про работу. • growth.env — воркшопы и дискуссии от IT‑сообществ Сбера. С тебя — вопрос, с команды — ответ. • party.env — DIY, танцы и большая финальная вечеринка с музыкальными хедлайнерами. Выбирай свою среду — или пройди все три: пусть эти выходные станут началом чего‑то большего!

  • 5 авг.1 83224

    Получаем гласные Этот пример возвращает в строке найденные гласные "a e i o u". Это может оказаться полезным при поиске или обнаружении гласных.

  • 4 авг.2 11664

    Использование внешних процессов в Python с помощью subprocess В мире программирования бывают моменты, когда необходимо взаимодействовать с внешними программами из кода на Python. Для этих задач отлично подходит модуль subprocess, который предоставляет удобный способ запуска внешних процессов, передачи данных им и получения результатов выполнения. Что такое subprocess? subprocess - это модуль Python, который предоставляет множество возможностей для запуска новых процессов, подключения к существующим процессам, а также обмена данными между вашим кодом и внешними программами. Пример использования subprocess: import subprocess # Простой пример: выполнение команды "ls" в командной строке result = subprocess.run(['ls', '-l'], stdout=subprocess.PIPE, text=True) # Вывод результата выполнения команды print(result.stdout) В данном примере мы использовали subprocess.run для выполнения команды "ls -l". Параметр stdout=subprocess.PIPE указывает на перенаправление вывода команды в переменную result.stdout. Параметр text=True гарантирует, что вывод будет в текстовом формате. Передача данных и получение результата: import subprocess # Передача данных в команду и получение результата input_data = "Hello, subprocess!" result = subprocess.run(['echo', input_data], stdout=subprocess.PIPE, text=True) # Вывод результата выполнения команды print(result.stdout) В данном примере мы использовали команду echo для вывода переданных данных. subprocess.run позволяет передавать данные в команду через параметр input. subprocess также предоставляет множество других функций для более сложных сценариев взаимодействия с процессами, таких как запуск процесса в фоновом режиме, обработка ошибок, а также потоковый вывод данных. #python #subprocess

  • 3 авг.2 08633

    Итерируемый счетчик Еще один классный итератор из itertools — это count, который генерирует бесконечную последовательность чисел. В аргументах можно задать значения start и step: первый отвечает за начальное значение, а второе за шаг, как и в range. Обычно count редко используют с циклом for. Чаще можно встретить случаи с функциями типа zip или map. #itertools

  • 2 авг.2 19333

    Создание дочернего процесса Метод os.fork() создаёт дочерний процесс в том же месте кода, вызывая системную функцию fork(), и возвращает PID (Process Identifier), который равен PID дочернего процесса в родительском процессе и нулю в новом. Кстати, получается интересный случай, в коде примера выполняется и блок if, и else. Если не знать про os.fork() и посмотреть вывод подобного кода, то возникнет много вопросов. #os #fork #процессы

  • 1 авг.2 32237

    Упрощение создания операторов сравнения Для создания объектов с поддержкой операторов сравнения в классе обычно требуется реализовать большое количество магических методов, а именно – __lt__, __le__, __eq__, __ne__, __gt__, __ge__. Про то, что делает каждый из них расскажем отдельным постом, но сейчас покажем, как можно сильно упростить реализацию подобного класса. Для этого можно использовать декоратор total_ordering из пакета functools. В таком случае достаточно реализовать в классе только __lt__ и __eq__. Эти два метода являются минимумом, который нужен декоратору для конструирования остальных методов. #классы