Python Academy
49.5K subscribers
1.08K photos
2 videos
374 links
Python Academy — один канал вместо тысячи учебников

Чат канала: @python_academy_chat

Сотрудничество: @zubar89

Канал включён в перечень РКН: https://rkn.link/TVu
加入频道
Применяем pathlib взамен os

В Python 3 стандартная библиотека включает модуль pathlib, предоставляющий функцию Path, которая обеспечивает все необходимое для эффективной работы с путями к файлам.

Одно из наиболее впечатляющих преимуществ использования pathlib - это упрощение работы с путями за счет использования Path вместо os.path.join, представляя более простой и изящный метод, как показано на изображении.

В общем, этот модуль предлагает замену функциям для работы с файловыми путями из модуля os, таким как os.mkdir или os.path, на более удобные альтернативы.

#path #os
Сбер представил российскую альтернативу JetBrains — GigaIDE Pro

На конференции ЦИПР Сбер презентовал новую версию интегрированной среды разработки GigaIDE Pro, которая заменяет зарубежные аналоги. Старший вице-президент Сбера Андрей Белевцев отметил, что GigaIDE Pro обеспечивает устойчивость и безопасность ИТ-процессов, минимизируя зависимость от иностранных платформ.

В новой версии GigaIDE Pro для Python-разработки добавили инструменты быстрого создания проектов на Django и Flask, а также навигацию по коду для фреймворков Spring и Jakarta. По данным Сбера, GigaIDE Pro уже занимает 14% рынка IDE в России.
Голосовой вывод в Python с помощью pyttsx3

Сегодня мы поговорим о библиотеке pyttsx3, которая предоставляет удобные инструменты для реализации голосового вывода текста с использованием Python. Эта библиотека может пригодиться, например, для создания ассистентов, аудиокниг, аудиогидов и многих других приложений.

Что такое pyttsx3?
pyttsx3 - это простой в использовании модуль Python для синтеза речи. Он предоставляет возможность преобразования текста в речь с различными настройками, такими как выбор голоса и регулирование скорости речи. Эта библиотека основана на популярной библиотеке pyttsx, но с более активной поддержкой и совместимостью с Python 3.

pyttsx3 также поддерживает события, что делает его полезным инструментом для создания интерактивных приложений с голосовым выводом.

Пример использования pyttsx3 на фото.
Аргументы и параметры командной строки

Для обработки передаваемых аргументов и создания удобный интерфейс командной строки в python есть отличный модуль argparse.

Для начала нам нужно создать объект парсера ArgumentParser, в который мы уже сможем добавить аргументы с нужными параметрами с помощью метода add_argument.

Первым параметром add_argument принимает либо имя обязательного позиционного аргумента, либо список опционального аргумента (опциональный аргумент идентифицируется через -). Также у add_argument есть множество необязательных опциональных параметров для работы с передаваемым значением аргумента, о них можете почитать в данной статье.

После добавления всех аргументов, нам нужно их спарсить с помощью метода parse_args, на выходе мы получим объект со всеми содержащимися аргументами.

#argparse
Делегирующие генераторы

Давайте создадим простенькую генераторную функцию subgen, которая будет возвращать числа от 0 до переданного аргумента.

А также ещё одну генераторную функцию delegator, которая будет возвращать числа из итерируемого объекта source, который передадим в качестве аргумента.

Цикл, который можно написать в delegator, можно заменить всего лишь одной строчкой. То есть yield from заменяет цикл for, в котором только возвращаются значения через yield.

Грубо говоря, такая конструкция является неким туннелем передачи данных туда и обратно. В нашей ситуации delegator можно назвать делигирующим генератором, а subgen подгенератором.

#генераторы
PyQtGraph

PyQtGraph — это библиотека Python для создания интерактивных 2D и 3D графиков, а также элементов графического интерфейса (GUI). Она основана на PyQt (или PySide) и NumPy, что делает ее мощным и универсальным инструментом для научных, инженерных и исследовательских задач.

#python
Создание скриншотов с использованием модуля pyscreenshot

Модуль pyscreenshot, обеспечивая кросс-платформенную функциональность, позволяет легко создавать скриншоты как всего экрана, так и его отдельных частей. Для работы этого модуля необходимо установить библиотеку Pillow.

Для захвата изображения используется метод grab, для его отображения – show, а для сохранения – save. В метод grab можно также передать аргумент bbox, чтобы ограничить захват только определенной областью экрана.

Этот модуль оказывается особенно полезным, например, при логировании скриптов, использующих Selenium.
Selenium может открывать браузер и выполнять различные операции в нем, и использование pyscreenshot позволяет создавать скриншоты для последующего анализа и отладки.

#python #pyscreenshot