Лучшие графические интерфейсы Python для разработчиков (Dev GUI)

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

В этом посте я расскажу о лучших фреймворках Python GUI для всех платформ (Windows, Linux и Mac). Все эти GUI-фреймворки просты в использовании и популярны, некоторые из них даже с открытым исходным кодом.

Итак, давайте начнем наш список из лучших графических интерфейсов Python:

Kivy

Kivy — это ускоренная платформа OpenGL ES 2 для создания новых пользовательских интерфейсов. Он поддерживает несколько платформ, а именно Windows, MacOSX, Linux, Android iOS и Raspberry Pi. Он имеет открытый исходный код и включает в себя более 20 виджетов в своем наборе инструментов.

PyQT

PyQT — одна из излюбленных кроссплатформенных привязок Python, реализующих библиотеку Qt для среды разработки приложений Qt (принадлежащей Nokia). В настоящее время PyQT доступен для Unix / Linux, Windows, Mac OS X и Sharp Zaurus. Он сочетает в себе лучшее из Python и Qt, и программист может решить, создавать ли программу путем кодирования или с помощью Qt Designer для создания визуальных диалогов.

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

Tkinter

Tkinter обычно поставляется в комплекте с Python с использованием Tk и является стандартной средой графического интерфейса Python. Он популярен благодаря своей простоте и графическому пользовательскому интерфейсу. Это открытый исходный код и доступный по лицензии Python.

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

WxPython

WxPython — это оболочка с открытым исходным кодом для кроссплатформенной библиотеки графического интерфейса WxWidgets (ранее известной как WxWindows), реализованная как модуль расширения Python. С WxPython вы, как разработчик, можете создавать собственные приложения для Windows, Mac OS и Unix.

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

PyGUI

PyGUI — это кроссплатформенная среда графических приложений для Unix, Macintosh и Windows. По сравнению с некоторыми другими фреймворками графического интерфейса пользователя PyGUI на сегодняшний день является самым простым и легким из всех, поскольку API полностью синхронизирован с Python. PyGUI вставляет очень меньше кода между платформой графического интерфейса пользователя и приложением Python, поэтому на экране приложения обычно отображается естественный графический интерфейс платформы.

PySide

PySide — это бесплатный кроссплатформенный инструментарий графического интерфейса Qt, инициированный и спонсируемый Nokia, Qt — это инфраструктура пользовательского интерфейса и кроссплатформенное приложение. PySide в настоящее время поддерживает Linux / X11, Mac OS X, Maemo и Windows, а поддержка Android находится в планах на ближайшее будущее. PySide предоставляет инструменты для работы с мультимедиа, XML-документами, сетью, базами данных и графическим интерфейсом пользователя. Ключевой особенностью PySide является его совместимость API с PyQt4, поэтому, если вы хотите перейти на PySide, этот процесс будет беспроблемным.

Скрипт сборки Python на CentOS

Сборка Python здесь описана так, как обычно она делается на проекте. Способ простой и чистый. Для Debian/Ubuntu команды установки будут несколько различаться. Утилиту wget на Debian/Ubuntu обычно ставить не нужно.

Например, нужно вместо
yum groupinstall "Development Tools" -y
написать для установки
apt-get install build-essential -y
Скрипт:
#!/bin/bash
yum groupinstall "Development Tools" -y
yum install wget -y
# последние версии змея смотрите на https://www.python.org/ftp/python/"
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar xf Python-2.7.9.tgz
cd Python-2.7.9
# Конфигурируем
./configure
# делаем чистую сборку! Обычный make вам гору ошибок насобирает и не сделает ничего.
make clean
# Ставим змея
make install
# Уходим из папки и сносим лишнее с просмотром задачи
cd ..
rm -rfv Python-2.7.9 Python-2.7.9.tgz
# Идем собирать третий Питон, его НАСТОЯТЕЛЬНО РЕКОМЕНДУЕТСЯ брать последнюю версию. Тут это 3.9.6
wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgz
tar xf Python-3.9.6.tgz
cd Python-3.9.6
make clean
make install
cd ..
rm -rfv Python-3.9.6 Python-3.9.6.tgz

Делаем Python из PHP

Вы когда-нибудь пытались перевести сайт на Python, но за неимением навыков у Вас не получалось? Тогда мой рассказ про инструмент преобразования PHP-файлов для Вас и я думаю, что он пригодится любому мало-мальски знающему программисту.
php2py — это php-скрипт для преобразования php в python. В качестве входных данных этот скрипт принимает XML-файл, созданный компилятором PHP под названием phc вместо php-кода. Для вебмастеров такое решение незаменимо, так как помогает создавать Python-файлы из уже готовых PHP и можно таким образом перегнать весь сайт.
Пример выполнения команд — это:
$ phc --dump-xml=ast somecode.php > out.xml
$ ./php2py.php out.xml > somecode.py
Вообще, инструмент доступен на Гитхабе свободно. Его придумал программер под ником taichino. Единственная трудность в том, что компилятор phc потерял домен, поэтому в свободном доступе его найти не так просто. Ну, для тех, кто использует поиск, может и просто.
Теперь затронем тему самого phc.
phc — это компилятор с открытым исходным кодом для PHP с поддержкой плагинов. Кроме того, его можно использовать для точной печати или обфускации PHP-кода в качестве платформы для разработки приложений, обрабатывающих скрипты PHP, или для преобразования PHP в XML и обратно, что позволяет обрабатывать PHP-скрипты с использованием инструментов XML.
Примечание: phc на некоторых платформах не поддерживается. Он компилирует некоторые программы и имеет расширенную инфраструктуру оптимизации. Однако он не предназначены для использования в производстве (особенно если нет поддержки объектов!). Он имеет отличную структуру преобразования программ, хотя, к сожалению, последний раз обновлялся для PHP 5.2 и не поддерживает более новые функции.
Печально но факт — такие разработки как phc чаще всего проходят мимо официальной аудитории.
Установка компилятора весьма проста и потребует только базовых инструментов разработчика. Может еще запросить Boost, но он лежит также в свободном доступе и найти его не составит труда.
Итак, ставим.
$ git clone https://github.com/pbiggar/phc.git
$ cd phc
$ touch src/generated/* Makefile.in configure Makefile libltdl/aclocal.m4 libltdl/Makefile.in libltdl/configure libltdl/Makefile
$ ./configure
$ make
$ make install
Для Debian-like систем может потребоваться установка дополнительных библиотек.