Python Academy
47K subscribers
1.26K photos
3 videos
422 links
Python Academy — один канал вместо тысячи учебников

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

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

Канал включён в перечень РКН: https://rkn.link/TVu
Download Telegram
Работаем с файловыми путями

В стандартной библиотеке есть максимально удобный пакет pathlib для простой работы с файловыми путями.

Для представления пути к файлу есть класс Path, с объектами которого уже можно производить операции. Например, методы exists() и is_dir() проверяют, существует ли файл и является ли он директорией.

Но самой классной фичей является замена os.path.join() на более удобный и элегантный вариант с использованием слэшей, как показано на картинке.

Итого, пакет pathlib может стать частичной заменой os в некоторых случаях при работе с файловыми путями.

#pathlib
👍1
Российский ИИ-стек стал опенсорсом — весь сразу

Сбер выложил под MIT сразу несколько ИИ-моделей, которые можно крутить в собственном контуре: две MoE-LLM GigaChat Ultra-Preview и Lightning, ASR-модель GigaAM-v3, визуальный стек Kandinsky 5.0 (Video Pro / Video Lite / Image Lite) и K-VAE 1.0 для сжатия визуальных данных.

По сути, это готовый open-source набор для русскоязычных ML-пайплайнов:
• Ultra / Lightning — для LLM-задач, RAG, агентов и кода (Lightning при этом не проседает по качеству относительно опенсорса в своём классе и даёт очень быстрый инференс, что важно для продакшена).
• GigaAM-v3 — для распознавания русской речи с пунктуацией и нормализацией.
• Kandinsky 5.0 + K-VAE 1.0 — для генерации и обучения видео/изображений, в том числе с русскими промптами и кириллицей.
Модели можно разворачивать локально, заворачивать в свои REST/gRPC-сервисы и подключать к Python-стеку — от классических FastAPI-бэкендов до внутренних тулов для RAG и мультимодальных приложений.

#python #машинноеобучение
🔥6
Управление Docker контейнерами с помощью docker-py

docker-py – это официальная библиотека Python для Docker, предоставляющая API для взаимодействия с Docker Daemon. С её помощью можно автоматизировать процессы создания, запуска, остановки и удаления контейнеров, работы с образами, сетями и томами Docker.

import docker

# Создание клиента
client = docker.from_env()

# Запуск контейнера
container = client.containers.run("ubuntu:latest", "echo Hello, docker-py!", detach=True)

# Получение логов контейнера
print(container.logs().decode())

# Остановка и удаление контейнера
container.stop()
container.remove()

В данном примере мы создаем клиента Docker, используя переменные окружения текущей сессии. Затем мы запускаем контейнер из образа ubuntu:latest, выполняем в нем команду echo, выводим логи работы контейнера и в конце останавливаем и удаляем контейнер.

Управление образами с помощью docker-py:
# Получение списка всех образов
images = client.images.list()

# Вывод информации о каждом образе
for image in images:
print(f'ID: {image.id}, Теги: {image.tags}')


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

#python #docker #dockerpy
👍6😱2
Подсчет количества слов в текстовом файле

На этом примере в Python мы прочитаем текстовый файл и посчитаем количество слов в нем.
🔥4
Работаем с USB

PyUSB — это библиотека, которая обеспечивает легкий доступ к USB. Имеет поддержку изохронной передачи, если её поддерживает бэкенд.

Основные методы для работы с USB, такие как find(), show_devices() и т. д, хранятся в usb.core.

Пакет usb.util содержит вспомогательные функции.

Функция find() используется для поиска устройств, подключенных к системе.

Также есть реализация внешнего и внутреннего интерфейса, для изоляции API от деталей реализации системы. Связующим звеном между двумя слоями является интерфейс IBackend.

PyUSB поставляется со встроенными бэкэндами для libusb 1.0, libusb 0.1 и OpenUSB.

#python #PyUSB
👍8
Selenium: Автоматизация веб-браузера в Python

selenium - это библиотека, предназначенная для автоматизации веб-браузера в языке программирования Python. Она предоставляет удобные и эффективные средства для взаимодействия с веб-страницами, заполнения форм, нажатия кнопок и многих других действий, которые облегчают автоматизацию веб-процессов.

Одним из ключевых преимуществ selenium является его гибкость и многофункциональность. Вы можете использовать эту библиотеку для создания скриптов, которые могут автоматизировать различные задачи в веб-браузере, такие как тестирование веб-приложений, сбор данных с веб-сайтов или даже управление аккаунтом в социальных сетях.

Для начала работы с selenium, вам нужно установить библиотеку командой pip install selenium. После установки, вы можете создавать скрипты, которые будут взаимодействовать с веб-сайтами, имитируя действия пользователя. selenium предоставляет множество методов для работы с веб-элементами, что делает его одним из лучших инструментов для автоматизации веб-процессов.

С помощью selenium, вы можете автоматизировать рутинные задачи в веб-браузере, что сэкономит вам время и уменьшит вероятность ошибок. Это также открывает возможности для тестирования и сбора данных, что может быть весьма полезно в различных сферах, начиная от веб-разработки и заканчивая маркетингом.
🔥42
Делаем простой интерфейс используя tkinter

tkinter - это стандартная библиотека для создания графического пользовательского интерфейса (GUI) в Python. Она предоставляет простой и удобный способ создания оконных приложений с использованием виджетов, таких как кнопки, текстовые поля, списки и многое другое.

Хотя tkinter может показаться менее мощным по сравнению с некоторыми другими библиотеками GUI для Python, такими как PyQt или wxPython, она остается популярным выбором для начинающих разработчиков и для создания простых и удобных в использовании GUI-приложений.

#python #tkinter
3👍1