TGINSIGHT CHAT
Python Academy
@python_academy
EducaciónPython Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Posts recientes
Pág. 35 de 85 · 1,014 posts
Обрабатываем естественный язык TextBlob — удобный пакет для обработки текста. Он предоставляет простой API для погружения в общие задачи обработки естественного языка (NLP), такие как анализ тональности, пометку частей речи, перевод и многое другое. Здесь особенно круто, что к объектам класса TextBlob можно применять методы строк (upper, split, format и т. д.) и в целом обращаться с ними как с обычными строками. Документация находится здесь, но некоторые примеры есть и на картинке выше. Еще важно, что несколько функций, например translate(), требуют подключения к интернету. #textblob
Hashtags
Сокращение ссылок с помощью PyShorteners Вы наверняка сталкивались с сервисами по сокращению ссылок, даже если никогда не использовали их сами. Сокращённые ссылки частовстречаются в описаниях к видео на YouTube, в статьях и на множестве других ресурсов в интернете. Создание сокращенной ссылки можетпоказаться сложной задачей, но насамомделе это можно сделать всего за тристрочки кода с помощью библиотеки PyShorteners, пример кода можно найти на фото. #python#pyshorteners
Hashtags
Отлавливаем ошибки с помощью assert Инструкция assert принимает логическое выражение и необязательное сообщение. Она используется для проверки типов, значений аргумента и вывода функции, а также для отладки, поскольку останавливает программу в случае ошибки. Если выполнить инструкцию assert с логическим выражением, результат которого равен True, ничего не произойдет. Но в случае с False будет сгенерировано исключение AssertionError. Однако не нужно пытаться обработать исключение AssertionError блоком try-except. В таком случае assert теряет свой смысл. В примере мы проверили, является ли переданный аргумент числовым типом данных. Если не является, то будет вызвано исключение и выведено указанное сообщение. #исключения#assert
Hashtags
Преобразование текста в аудио на Python Используя библиотеку gTTS (Google Text-to-Speech) для Python, можно легкопреобразовывать текст в аудиофайлы. Эта библиотека использует API Google Translate для синтеза речи, обеспечиваявысокоекачество преобразования. Установка библиотеки производится стандартным способом через pip. Для начала работы с gTTS необходимо создать его экземпляр, передавтекст, который нужно озвучить, в качестве первого аргумента. Также есть возможность указатьязыкозвучивания через опциональный аргумент, который по умолчанию установлен на английский. Чтобы сохранить синтезированную речь в аудиофайл, используется метод save, аргументом которого является имяфайла. #python#gtts
Publicado 21 may
Быстрый deque deque предпочтительнее, чем обычный список, когда нужны более быстрые операции добавления и вытаскивания элементов с начала и конца контейнера. deque обеспечивает линейную сложность O(1) для операций добавления и выталкивания, у стандартного списка сложность по этим операциям O(n). Для deque есть возможность использовать стандартные функции — sum, min, max и другие.
Обрабатываем номера телефонов Пакет phonenumbers основан на библиотеке libphonenumber от Google, которая позволяет форматировать, парсить и проверять номера телефонов. Основным классом, который представляет номер, является PhoneNumber. Объект можно создать, вызвав метод parse() и передав в аргументы номер телефона в виде строки. Вторым аргументом также можно указать страну. В целом, пакет использовать достаточно просто, базовые примеры есть на картинке. Также можете посмотреть документацию для более продвинутого использования. #python#phonenumbers
Hashtags
Publicado 19 may
Полезные функции модуля itertools Модуль itertools - инструмент в Python для работы с итерируемыми объектами. Он предоставляет различные функции для создания и манипулирования итераторами, что делает его незаменимым инструментом для разработчиков. Давайте рассмотрим некоторые полезные функции из этого модуля: 1. itertools.count(): Эта функция создает бесконечный итератор, который генерирует последовательность чисел, начиная с заданного значения. Это удобно использовать, например, при создании уникальных идентификаторов. 2. itertools.cycle(): Эта функция создает итератор, который бесконечно повторяет элементы из исходной последовательности. Это может быть полезно, когда вам нужно обрабатывать данные циклически. 3. itertools.islice(): С помощью этой функции можно получить срез элементов из итератора, подобно срезу для списков. Это позволяет работать с большими итерируемыми объектами без необходимости загрузки их в память целиком. 4. itertools.chain(): Эта функция объединяет несколько итерируемых объектов в один, что упрощает итерацию по ним как по одному объекту. 5. itertools.groupby(): Эта функция позволяет группировать элементы итерируемого объекта на основе заданного ключа. Это особенно полезно при анализе и обработке данных. И это далеко не все функции, доступные в модуле itertools. Он предоставляет множество возможностей для более эффективной итерации и манипуляции данными.
Publicado 19 may
Indico Indico — это мощная библиотека Python для извлечения информации из неструктурированных текстов, изображений и PDF-файлов. Она позволяет вам выполнять задачи обработки естественного языка (NLP), компьютерного зрения (CV) и машинного обучения (ML) с помощью простых и понятных API. https://pypi.org/project/indico/
Многопоточность В модуле threading новый поток выполнения может начинаться с нового threading.Thread и присвоения ему функции для выполнения. Параметр target ссылается на функцию (или вызываемый объект), который будет работать. Нить не начнет выполнение до start, также не будет вызываться Thread объекта. Когда my_thread завершается, вызов start выкинет исключение RuntimeError. Если вы хотите запустить Thread в фоновом режиме, то передавайте daemon=True или установите my_thread.daemon в True перед вызовом start(). #потоки#многопоточность
Hashtags
Удаление страниц PDF-файла Библиотека PyMuPDF включает в себя довольно много сложных методов, которые упрощают удаление страниц из файла PDF. Он позволяет указать либо одну страницу (используя метод deletePage()), либо диапазон номеров страниц (используя метод deletePageRange()), либо список с номерами страниц (используя метод select()). В следующем примере показано, как использовать список для выбора страниц, которые нужно сохранить в исходном документе. Имейте в виду, что страницы, которые не указаны, не будут частью выходного документа. В нашем случае выходной документ содержит только первую, вторую и четвертую страницы. #python
Hashtags
Как работают статические методы Статические методы создаются в классе при помощи декоратора @staticmethod. Такие методы привязаны к классу, а не объекту — в этом и есть основное отличие. Такой тип методов не может модифицировать ни объект, ни сам класс. То есть передавать объект или класс и прописывать self или cls в аргументах не нужно. Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть. #ооп
Hashtags
Тестирование на pytest pytest — ближе по духу к языку Python нежели unittest, которая накладывает определенные обязательства при разработке тестов. Например, создание классов-наследников от TestCase или выполнение определенной процедуры запуска тестов. Но при разработке на pytest ничего этого делать не нужно. Вы просто пишете функции, которые должны начинаться с "test_" и используете assert, встроенные в Python. Также он поддерживает запуск тестов на unittest и nose, то есть полная обратная совместимость с ними. #python#pytest#assert