Голосовой вывод в Python с помощью pyttsx3
Сегодня мы поговорим о библиотеке
Что такое pyttsx3?
Пример использования
Сегодня мы поговорим о библиотеке
pyttsx3, которая предоставляет удобные инструменты для реализации голосового вывода текста с использованием Python. Эта библиотека может пригодиться, например, для создания ассистентов, аудиокниг, аудиогидов и многих других приложений.Что такое pyttsx3?
pyttsx3 - это простой в использовании модуль Python для синтеза речи. Он предоставляет возможность преобразования текста в речь с различными настройками, такими как выбор голоса и регулирование скорости речи. Эта библиотека основана на популярной библиотеке pyttsx, но с более активной поддержкой и совместимостью с Python 3.pyttsx3 также поддерживает события, что делает его полезным инструментом для создания интерактивных приложений с голосовым выводом.Пример использования
pyttsx3 на фото.👍10
Знакомство с библиотекой NumPy в Python
Что такое
Преимущества
- Производительность:
- Удобство:
- Интеграция: Библиотека интегрируется легко с другими библиотеками, такими как
Пример использования
#python #NumPy #научныевычисления #анализданных
Что такое
NumPy?NumPy (Numerical Python) - это популярная библиотека для вычислительных операций с многомерными массивами и матрицами, а также для выполнения высокоуровневых математических функций. Она предоставляет эффективные инструменты для работы с большими объемами данных и позволяет выполнять различные операции, такие как суммирование, умножение, индексацию и многое другое, без необходимости явно создавать циклы.Преимущества
NumPy:- Производительность:
NumPy выполняет операции над массивами быстрее, чем стандартные структуры данных Python.- Удобство:
NumPy предоставляет удобные методы для работы с данными, такие как срезы, индексация и броадкастинг.- Интеграция: Библиотека интегрируется легко с другими библиотеками, такими как
SciPy, pandas и Matplotlib, что делает ее мощным инструментом для научных вычислений.Пример использования
NumPy:import numpy as np
# Создаем одномерный массив
arr = np.array([1, 2, 3, 4, 5])
# Выполняем операции над массивом
arr_squared = arr ** 2
arr_sum = np.sum(arr)
print("Исходный массив:", arr)
print("Квадраты элементов:", arr_squared)
print("Сумма элементов:", arr_sum)
NumPy также предоставляет функции для работы с многомерными массивами, линейной алгеброй, случайными числами и многое другое.#python #NumPy #научныевычисления #анализданных
👍7❤1
Indico
Indico — это мощная библиотека Python для извлечения информации из неструктурированных текстов, изображений и PDF-файлов. Она позволяет вам выполнять задачи обработки естественного языка (NLP), компьютерного зрения (CV) и машинного обучения (ML) с помощью простых и понятных API.
https://pypi.org/project/indico/
Indico — это мощная библиотека Python для извлечения информации из неструктурированных текстов, изображений и PDF-файлов. Она позволяет вам выполнять задачи обработки естественного языка (NLP), компьютерного зрения (CV) и машинного обучения (ML) с помощью простых и понятных API.
https://pypi.org/project/indico/
❤3
Слияние аудио и видео потоков
Проблема с получением видео в высоком качестве со звуком с
Решением является отдельное получение аудио и видео потоков и их последующее объединение с использованием программы
Необходимо выбрать соответствующие аудио и видео потоки, затем использовать полученные
#python #ffmpeg #pytube
Проблема с получением видео в высоком качестве со звуком с
YouTube связана с использованием технологии DASH (Dynamic Adaptive Streaming over HTTP), которая не предусматривает наличие звуковой дорожки в потоке.Решением является отдельное получение аудио и видео потоков и их последующее объединение с использованием программы
ffmpeg.Необходимо выбрать соответствующие аудио и видео потоки, затем использовать полученные
URL в команде ffmpeg для запуска процесса загрузки и слияния потоков.#python #ffmpeg #pytube
🔥10👍1
Точка входа
В некоторых языках программирования есть функции
Как вариант, многие пишут основную логику программы в обычную функцию
Переменная
Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает.
#main
В некоторых языках программирования есть функции
main(), с которых начинается выполнение программы. Но в Python весь код исполняется построчно.Как вариант, многие пишут основную логику программы в обычную функцию
main(), а вызывают ее только в условии if __name__ == '__main__'. Здесь стоит объяснить отдельно про то, что такое __name__.Переменная
__name__ — это специальная переменная, которая будет равна '__main__', только если файл запускается как основная программа. А при импорте в качестве модуля выставляется равной имени модуля.Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает.
#main
❤6👍1
Превращаем PDF в текст
Думаю, все периодические работают с PDF-документами. И зачастую это ручная и скучная работа. Но Python может автоматизировать даже такую рутинную задачу.
Модуль
Кстати, здесь ещё интересно то, что исходный код модуля написан на C++. Поэтому есть небольшая вероятность, что придётся повоевать с зависимостями.
#pdftotext
Думаю, все периодические работают с PDF-документами. И зачастую это ручная и скучная работа. Но Python может автоматизировать даже такую рутинную задачу.
Модуль
pdftotext создан именно для работы с документами в PDF формате. Устанавливается он через пакетный менеджер pip, а использовать его проще простого. Все основные операции представлены на картинке выше. Кстати, здесь ещё интересно то, что исходный код модуля написан на C++. Поэтому есть небольшая вероятность, что придётся повоевать с зависимостями.
#pdftotext
👍11❤1
Функции только с позиционными параметрами
Если с помощью
Однако при попытке вызвать функцию и передать туда именованный аргумент, а не позиционный, получим исключение. А если передать аргумент, явно не указывая имя параметра, то все работает.
Такое поведение как раз задает тот слэш. Параметры, записанные до него, можно передать только как позиционные. После него – как угодно, все будет работать стандартно.
#функции
Если с помощью
inspect посмотреть на то, как объявлена встроенная функция float, то увидим, что есть входный параметр x и еще какой-то непонятый слэш. Однако при попытке вызвать функцию и передать туда именованный аргумент, а не позиционный, получим исключение. А если передать аргумент, явно не указывая имя параметра, то все работает.
Такое поведение как раз задает тот слэш. Параметры, записанные до него, можно передать только как позиционные. После него – как угодно, все будет работать стандартно.
#функции
👍4❤2
Рассказываем как легко узнать самое короткое расстояние между двумя точками земли
Геодезическое расстояние — это длина кратчайшего пути между двумя точками на любой поверхности Земли. В следующем примере мы покажем, как пользователь может вычислить геодезическое расстояние на основе данных широты и долготы.
В примере узнали, что расстояние между городами Нью-Йорк и Техас 2507 километров.
#python
Геодезическое расстояние — это длина кратчайшего пути между двумя точками на любой поверхности Земли. В следующем примере мы покажем, как пользователь может вычислить геодезическое расстояние на основе данных широты и долготы.
В примере узнали, что расстояние между городами Нью-Йорк и Техас 2507 километров.
#python
Распаковывание последовательностей при неизвестном числе элементов
Для указанного в подзаголовке случая в Python 3 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции.
#python
Для указанного в подзаголовке случая в Python 3 есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции.
#python
❤5
AI Journey Contest 2025: Брось вызов задачам уровня профи в мире ИИ!
Участвуй в международном онлайн-соревновании по ИИ и получи возможность побороться за денежный приз! Призовой фонд — 6,5 млн рублей!
Выбери один или несколько треков:
Не упусти возможность не только прокачать свои скиллы, получить заветную строчку в списке своих достижений и выиграть солидный приз, но и заявить о себе на AI Journey — главной международной конференции по ИИ в России!
Прием решений заканчивается уже 30 октября. Спеши зарегистрироваться по ссылке.
Участвуй в международном онлайн-соревновании по ИИ и получи возможность побороться за денежный приз! Призовой фонд — 6,5 млн рублей!
Выбери один или несколько треков:
Agent-as-Judge — универсальный «судья», способный оценивать ИИ-тексты.
Human-centered AI Assistant — персонализированный ассистент на основе
GigaChat, имитирующий поведение людей и способный предугадать их предпочтения.
Бонус: Участникам предоставляются токены для API + возможность получить дополнительно 1 млн токенов!
GigaMemory — механизм долговременной памяти для LLM, помогающий ассистенту запоминать и использовать важные факты в диалоге.
Не упусти возможность не только прокачать свои скиллы, получить заветную строчку в списке своих достижений и выиграть солидный приз, но и заявить о себе на AI Journey — главной международной конференции по ИИ в России!
Прием решений заканчивается уже 30 октября. Спеши зарегистрироваться по ссылке.
Перечисления
Python поддерживает простой механизм работы с перечислениями, которые ещё называют
Из документации можно узнать о том, что
Также можно задать геттер через
#enum
Python поддерживает простой механизм работы с перечислениями, которые ещё называют
enum. Подобные перечисления удобно использовать для хранения списков констант. Из документации можно узнать о том, что
Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность.Также можно задать геттер через
@property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex.#enum
👍3❤2
Ruff
Основным преимуществом
#python #ruff
Ruff — Чрезвычайно быстрый линтер и форматер кода на Python, написанный на Rust.Основным преимуществом
Ruff является его скорость. Ruff в 10-100 раз быстрее аналогов. В сравнении с flake8, автор заявляет о практически полном совпадении с набором правил инструмента и нативной реализацией популярных плагинов (flake8-bugbear и т.д.). Также Ruff совместим с Black «из коробки».Ruff может форматировать код. Например, он автоматически удаляет неиспользуемые импорты. Что касается сортировки и группировки строк импорта, то она практически идентична isort.#python #ruff
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Ночью Телеграм заблокировал крупнейшего бота с бесплатными книгами — Флибусту. Уже утром разработчики подняли новый, срочно сохраняйте себе: t.iss.one/flibustatopbot
👎10
Аргументы командой строки
При запуске программ через терминал можно указывать аргументы через пробел. В Python список этих аргументов хранится в переменной
Первым элементом всегда является имя запускаемого скрипта, вторым и далее — непосредственно сами аргументы.
#sys
При запуске программ через терминал можно указывать аргументы через пробел. В Python список этих аргументов хранится в переменной
argv во встроенном модуле sys.Первым элементом всегда является имя запускаемого скрипта, вторым и далее — непосредственно сами аргументы.
#sys
Определяем тип изображения с помощью Python
Установка модуля -
Подробнее можно почитать здесь.
Установка модуля -
pip install imghdr
Предположим, вам предоставлен файл типа изображения, и вам нужно определить тип этого файла. Проще говоря, вам нужно получить расширение этого файла типа изображения. Это можно использовать в проекте, чтобы проверить, действительно ли запрошенное вами изображение является изображением и с каким расширением оно поставляется.Подробнее можно почитать здесь.
❤3