Как сделать интерфейс программы python

Программа с графическим интерфейсом для программирования на Python

Программа с графическим интерфейсом для программирования на Python

1. О программе GUI:

GUI (Graphical User Interface, Сокращенно GUI, также известный как графический пользовательский интерфейс) относится к пользовательскому интерфейсу, работающему на компьютере, отображаемому в графическом виде.

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

Для нашей обычно используемой операционной системы Windows существует множество способов написания настольных программ с графическим интерфейсом пользователя, включая пакет Java Swing, winform, WPF (с использованием C #), структуру QT (с использованием C ++) и т. Д., И вы даже можете использовать веб-методы для написания настольных программ с графическим интерфейсом пользователя, таких как электрон (JS и другие языки).

Красивый графический интерфейс на Python | Все Фишки DearPyGui

2. Реализация программирования GUI на Python:

Как создать пользовательский интерфейс для вашего приложения Python

Python — один из распространенных языков программирования для автоматизации процессов SEO.

Одна из лучших библиотек для создания внешнего интерфейса для наших приложений без каких-либо знаний HTML, CSS или кодирования с помощью платформы на основе JavaScript — это пакет Streamlit.

В этом руководстве по Streamlit мы подробно рассмотрим, как создать красивое приложение с помощью Python и Dockerfile для развертывания вашего приложения Streamlit.

Что такое стримлит?

Streamlit — это платформа приложений с открытым исходным кодом (пакет Python), которая дает нам возможность создавать привлекательные приложения без каких-либо знаний о фронтенд-разработке.

Это освобождает нас от участия в какой-либо внешней среде или кодировании в HTML, CSS и JavaScript.

Вы используете чистый Python для разработки интерфейса.

Когда станет полезной библиотека Streamlit?

Прежде всего, если вы пишете сценарии Python, которые регулярно выполняются на машине с планировщиком заданий, таким как cron, Streamlit вам бесполезен.

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

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

Читайте также:
Функции операционных систем загрузка программ в оперативную память

Создание приложения Streamlit: начало работы

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

Прежде чем начать, создайте папку на своем компьютере и назовите ее, как хотите.

Кроме того, я предполагаю, что вы уже устанавливали Python и знаете основы программирования на Python.

Для всего процесса нам нужно использовать эти библиотеки Python:

Кратко про Python Tkinter | Как создавать GUI Приложения

  • Запросы.
  • стримлит.
  • Streamlit-Аутентификатор.
  • ПиЯМЛ.

Также мы импортируем стандартную библиотеку Python:

Код учебника можно найти в моем репозитории начальных шаблонов Streamlit на Github.

Установка пакета Streamlit

Прежде всего, я предпочитаю создать виртуальную среду, запустив python3 -m venv .env, а затем установив пакет Streamlit, запустив pip3 install streamlit.

Теперь создайте скрипт Python. Назовем его streamlit_app.py.

В сложных проектах со слишком большим количеством функций я предпочитаю иметь отдельные файлы сценариев Python для разных функций, а затем импортировать их в streamlit_app.py или создавать отдельное приложение с помощью Flask или FastAPI.

Например, в приложении для исследования ключевых слов у меня есть скрипт Python для различных функций, которые получают данные от Semrush, скрипт для получения первых 10 или 20 результатов от Google, скрипт для автозаполнения Google и поисковых запросов, связанных с Google, и т. д. .

Получите запросы автозаполнения Google

Для выполнения запросов нам нужно использовать пакет Requests. Чтобы получить этот пакет, вам нужно запустить запросы на установку pip3.

Кроме того, для анализа ответа API автозаполнения нам нужно импортировать стандартную библиотеку Python JSON.

Прежде всего, мы импортируем стандартную библиотеку JSON, пакет Requests для выполнения запросов и Streamlit для создания нашего приложения.

Затем я определил функцию для получения запросов автозаполнения Google в виде списка строк.

Я использовал функцию замены дважды, чтобы все было просто, но вы можете использовать библиотеку re для использования регулярных выражений.

«»»A Streamlit app for getting the Google autocomplete queries «»» import json import requests import streamlit as st def google_autocomplete(keyword: str) -> list[str]: «»»Get Google autocomplete queries for a seed keyword Args: keyword (str): The seed keyword Returns: list[str]: A list of the autocomplete queries «»» google_autocomplete_api: str = » google_autocomplete_params: dict = < «q»: keyword, «cp»: 8, «client»: «gws-wiz», «xssi»: «t», «hl»: «en-US» >response = requests.get(google_autocomplete_api, params=google_autocomplete_params) list_google_autocomplete_uncleaned: list[list] = json.loads((response.content).decode(«UTF-8″)[5:])[0] list_google_autocomplete_cleaned: list[str] = [ element[0].replace(», »).replace(», ») for element in list_google_autocomplete_uncleaned ] return list_google_autocomplete_cleaned

Приложение Streamlit

До сих пор мы устанавливали пакет Streamlit и определяли нашу функцию для получения запросов автозаполнения Google. Теперь давайте создадим настоящее приложение.

Чтобы просмотреть приложение Streamlit, нам нужно запустить Streamlit с помощью команды run streamlit_app.py в терминале для локального запуска нашего приложения. После выполнения этой команды, перейдя по URL-адресу, вы сможете просмотреть приложение.

Читайте также:
В чем создать управляющую программу для чпу

Да, оно пустое, потому что мы не добавили к нему никаких заголовков и т. д.

Запуск приложения Streamlit из терминала

Скриншот от автора, октябрь 2022 г.

Добавьте заголовок в приложение Streamlit

Давайте добавим заголовок в наше приложение. Как вы видите выше, я импортировал Streamlit как st.

Теперь, вызвав функцию st.title(), мы можем добавить заголовок на страницу со стилем заголовка. Скажем, st.title («Это SEO-приложение следующего уровня»).

Помните, что после редактирования файла streamlit_app.py и его сохранения в правом верхнем углу страницы появляется значок, и вы должны нажать Всегда возвращайсядля просмотра изменений приложения без обновления страницы.

Всегда кнопка возврата в приложении Streamlit

Скриншот от автора, октябрь 2022 г.

Теперь наше приложение выглядит как на изображении ниже. Если ваша системная тема темная, ваше приложение имеет темную тему.

Взгляд на приложение Streamlit с заголовком

Скриншот от автора, октябрь 2022 г.

Добавьте текст в приложение Streamlit

Чтобы добавить текстовый абзац в приложение, вам нужно использовать функцию st.write(). Например, st.write(«Воплотите свои идеи в реальность»).

Приложение Steamlit

Скриншот от автора, октябрь 2022 г.

Добавьте текстовый ввод в приложение Streamlit

Как вы видели, в функции автозаполнения Google был аргумент под названием «ключевое слово».

Этот аргумент должен исходить от пользовательского ввода.

Чтобы получить пользовательский ввод, мы можем использовать поле ввода текста в Streamlit. С помощью st.text_input() мы можем добавить ввод текста. Например, st.text_input(«Какое у вас начальное ключевое слово?»).

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

input_google_autocomplete_keyword: str = st.text_input( «What is your seed keyword?»)

Теперь мы хотим запустить наше приложение, когда есть входное ключевое слово. Здесь мы используем оператор if, чтобы проверить, является ли переменная пустой или нет.

if input_google_autocomplete_keyword: output_list_google_autocomplete: list[str] = google_autocomplete( input_google_autocomplete_keyword)

Взгляд на приложение Streamlit с заголовком, текстом и текстовым вводом

Скриншот от автора, октябрь 2022 г.

Скачать из приложения Streamlit

Итак, мы добавили заголовок, строку текста и текстовое поле для ввода ключевого слова пользователя.

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

if output_list_google_autocomplete: st.download_button(«Download the output», («n»).join(output_list_google_autocomplete))

Взгляд на приложение Streamlit с заголовком, текстом, вводом текста и кнопкой загрузки.

Скриншот от автора, октябрь 2022 г.

Разработка простых приложений средствами Tkinter в Python

В статье рассмотрена возможность создания простых графических интерфейсов и описано создание приложения для рисования средствами tkinter в Python.

Аннотация статьи
графические интерфейсы
десктопные приложения
Ключевые слова
Новичихина Алёна Александровна
Дата публикации
23 января 2023

Информационные технологии
«Актуальные исследования» #4 (134), январь ’23
Поделиться
Цитировать
Актуальные исследования
# 4 ( 134 ), январь ‘ 23

Пакет («Интерфейс Tk») является стандартным интерфейсом Python для инструментария Tcl / Tk GUI toolkit. Tk и tkinter доступны на большинстве платформ Unix, включая macOS, а также в системах Windows [1].

Читайте также:
Программа как сделать свою игру

Поддержка Tkinter распространяется на несколько модулей. Большинству приложений потребуется основной tkinter модуль, а также tkinter.ttk модуль, который предоставляет современный набор тематических виджетов и API [1].

Десктопные приложения пишут на разных языках программирования: C++, C#, C, Python и других. Начинающим разработчикам проще всего использовать Python и его библиотеки для работы над графическими интерфейсами [2].

GUI (Graphical User Interface) – это графический интерфейс пользователя, оболочка программы, с которой мы взаимодействуем с помощью клавиатуры и мыши. На современных операционных системах почти все программы работают с графическим интерфейсом, и мы каждый день сталкиваемся с GUI: читаем статьи в браузере, набираем текст в редакторе или играем в игры [2].

Для создания простого графического интерфейса нужно подключить библиотеку Tkinter с помощью директивы import [3]. Далее создаётся главное окно приложения, в котором будут размещаться все графические элементы. Добавляем виджеты: визуальные элементы, выполняющие определённые действия.

После чего создаём главный цикл событий: он включает в себя все события, происходящие при взаимодействии пользователя с интерфейсом. Виджеты являются ключевыми объектами в работе с Tkinter. Это аналоги тегов из HTML, которые позволяют создавать интерактивные и неинтерактивные элементы, например надписи или кнопки [2].

В качестве простого примера графического приложения была разработана программа, по логике работы напоминающая графический редактор Microsoft Paint: пользователь выбирает средство рисования, необходимые цвета из палитры, рисует, корректирует при необходимости и сохраняет результат. Разработка приложения осуществлялась средствами Tkinter Python, в среде PyCharm.

Интерфейс программы (главное окно) представлен ниже (рис. 1).

Рис. 1. Главное окно интерфейса приложения

По умолчанию был задан стандартный размер кисти и чёрный цвет (рис.2).

Рис. 2. Задание параметров цвета и размера кисти по умолчанию

Параметры использования элементов интерфейса задаются при помощи функций (рис.3).

Рис. 3. Задание параметров использования элементов интерфейса

Для выбора нужного цвета кисти пользователь открывает палитру, выбирает цвет и нажимает «Ok» (рис.4).

Рис. 4. Цветовая палитра приложения

Результат работы приложения представлен на рисунке 5.

Рис. 5. Результат работы приложения

Можно отметить, что интерфейс созданного графического приложения выглядит достаточно просто. Для создания более сложных интерфейсов можно использовать другие средства Python, например, Dear PyGui, который позволяет создавать в том числе динамические графики, динамические рисунки, пользовательские виджеты, динамические и статические таблицы. Tkiner является стандартной библиотекой, прост в освоении, а потому подойдёт, прежде всего, новичкам, для знакомства с логикой создания простых графических приложений средствами Python.

Рецензент – Рудометкин В. А.

Источник: apni.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru