W tym artykule przejdziemy przez 5 najlepszych bibliotek Pythona GUI, które możesz wykorzystać w swoich projektach. Czytaj dalej, aby się o nich dowiedzieć.
Table of Contents
Co to jest GUI?
GUI lub graficzny interfejs użytkownika jest interaktywnym środowiskiem do przyjmowania odpowiedzi od użytkowników w różnych sytuacjach, takich jak formularze, dokumenty, testy itp. Zapewnia on użytkownikowi dobry interaktywny ekran niż tradycyjny interfejs wiersza poleceń (CLI).
Lista najlepszych bibliotek GUI Pythona
Zajmijmy się tym i przyjrzyjmy się najlepszym bibliotekom GUI dla Pythona.
1. PyQT5
PyQT5 jest frameworkiem graficznego interfejsu użytkownika (GUI) dla Pythona. Jest bardzo popularny wśród programistów, a GUI może być tworzony przez kodowanie lub projektanta QT. A QT Development framework to wizualny framework, który pozwala na przeciąganie i upuszczanie widżetów do budowania interfejsów użytkownika.
Jest to darmowe, otwarte oprogramowanie wiążące i jest zaimplementowane dla ram rozwoju aplikacji cross platform. Jest on używany na Windows, Mac, Android, Linux i Raspberry PI.
Do instalacji PyQT5 można użyć następującego polecenia :
pip install pyqt5
Prosty kod jest zademonstrowany tutaj:
from PyQt5.QtWidgets import QApplication, QMainWindowimport sysclass Window(QMainWindow): def __init__(self): super().__init__() self.setGeometry(300, 300, 600, 400) self.setWindowTitle("PyQt5 window") self.show()app = QApplication(sys.argv)window = Window()sys.exit(app.exec_())
Wyjście powyższego kodu jest następujące:
Zespół programistów Pythona z firmy ScienceSoft podkreśla korzyści płynące z używania PyQt:
PyQt to dojrzały zestaw powiązań Pythona z Qt do międzyplatformowego tworzenia aplikacji desktopowych. Oferuje bogaty wybór wbudowanych widgetów i narzędzi do tworzenia własnych widgetów, aby kształtować wyrafinowane GUI, jak również solidną obsługę baz danych SQL do łączenia się i interakcji z bazami danych.
2. Python Tkinter
Inny framework GUI nosi nazwę Tkinter. Tkinter jest jedną z najpopularniejszych bibliotek GUI Pythona służących do tworzenia aplikacji desktopowych. Jest to połączenie TK i pythonowego standardu GUI.
Tkinter dostarcza różnorodne widżety, takie jak etykiety, przyciski, pola tekstowe, pola wyboru, które są używane w aplikacjach graficznego interfejsu użytkownika.
Widżety kontroli przycisków są używane do wyświetlania i rozwijania aplikacji, podczas gdy widżet płótna jest używany do rysowania kształtów, takich jak linie, wielokąty, prostokąty itp. w aplikacji. Co więcej, Tkinter jest wbudowaną biblioteką dla Pythona, więc nie trzeba jej instalować jak innych frameworków GUI. Poniżej znajduje się przykład kodowania przy użyciu Tkintera.
from tkinter import *class Root(Tk): def __init__(self): super(Root,self).__init__() self.title("Python Tkinter") self.minsize(500,400)root = Root()root.mainloop()
Wyjście powyższego kodu jest takie, jak pokazano poniżej:
3. PySide 2
Trzecią biblioteką GUI Pythona, o której będziemy mówić jest PySide2 lub można ją nazwać QT dla Pythona. Qt dla Pythona oferuje oficjalne wiązania Pythona dla Qt (PySide2), pozwalające na użycie jego API w aplikacjach Pythona, oraz narzędzie do generowania wiązań (Shiboken2), które może być użyte do ekspozycji projektów C++ w Pythonie.
Qt for Python jest dostępny na licencji LGPLv3/GPLv3 oraz na komercyjnej licencji Qt.
Pozwól, że pokażę Ci teraz proces instalacji oraz przykład. Tak więc do instalacji, możesz po prostu użyć:
pip install PySide2
Tutaj jest przykład, aby skonfigurować ramkę GUI używając PySide2.
from PySide2.QtWidgets import QtWidgets, QApplicationimport sysclass Window(QtWidgets): def __init__(self): super().__init__() self.setWindowTitle("Pyside2 Window") self.setGeometry(300,300,500,400)app = QApplication(sys.argv)window=Window()window.show()app.exec_()
Wyjście powyższego kodu jest jak na rysunku poniżej:
4. Kivy
Kolejny framework GUI, o którym będziemy mówić, nazywa się Kivy. Kivy to biblioteka Open source Pythona do szybkiego tworzenia aplikacji wykorzystujących innowacyjne interfejsy użytkownika, takie jak aplikacje wielodotykowe.
Kivy działa na systemach Linux, Windows, OS X, Android, iOS i Raspberry Pi. Możesz uruchomić ten sam kod na wszystkich obsługiwanych platformach. Może natywnie korzystać z większości wejść, protokołów i urządzeń, w tym WM_Touch, WM_Pen, Mac OS X Trackpad i Magic Mouse, Mtdev, Linux Kernel HID.
Kivy jest w 100% darmowy do użytku, na licencji MIT.
Zestaw narzędzi jest profesjonalnie rozwijany, wspierany i używany. Można go używać w produktach komercyjnych. Framework jest stabilny i posiada dobrze udokumentowane API, a także przewodnik programisty, który pomoże Ci zacząć.
Silnik graficzny Kivy jest zbudowany w oparciu o OpenGL ES 2, wykorzystując nowoczesny i szybki potok graficzny.
Zestaw narzędzi zawiera ponad 20 widżetów, z których wszystkie są wysoce rozszerzalne. Wiele części zostało napisanych w C przy użyciu Cythona i przetestowanych za pomocą testów regresyjnych.
Przechodząc do instalacji Kivy, musisz zainstalować zależność „glew”. Możesz użyć polecenia pip jak poniżej:
pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew
Wpisz to polecenie i naciśnij enter, zostanie ono zainstalowane. Po tym musisz wpisać to polecenie, aby zainstalować Kivy:
pip install Kivy
Więc po instalacji, pozwól mi pokazać prosty przykład Kivy, aby pokazać, jak łatwo jest to zrobić.
from kivy.app import Appfrom kivy.uix.button import Buttonclass TestApp(App): def build(self): return Button(text= " Hello Kivy World ")TestApp().run()
Wyjście powyższego kodu jest takie, jak pokazano poniżej:
5. wxPython
Ostatnim frameworkiem GUI, o którym będziemy mówić jest wxPython. wxPython jest międzyplatformowym zestawem narzędzi GUI dla języka programowania Python.
Pozwala on programistom Pythona na tworzenie programów z solidnym, wysoce funkcjonalnym graficznym interfejsem użytkownika, w prosty i łatwy sposób. Jest on zaimplementowany jako zestaw modułów rozszerzeń Pythona, które opakowują komponenty GUI popularnej wieloplatformowej biblioteki wxWidgets, napisanej w C++.
Podobnie jak Python i wxWidgets, wxPython jest Open Source.
wxPython jest zestawem narzędzi wieloplatformowych. Oznacza to, że ten sam program będzie działał na wielu platformach bez modyfikacji. Obecnie obsługiwane platformy to Microsoft Windows, Mac OS X i macOS oraz Linux.
Teraz pokażę ci proces instalacji i stworzę prosty przykład. Więc dla instalacji wystarczy wpisać następujące polecenie:
pip install wxPython
Tutaj jest przykład:
import wxclass MyFrame(wx.Frame): def __init__(self,parent,title): super(MyFrame,self).__init__(parent,title=title,size=(400,300)) self.panel=MyPanel(self)class MyPanel(wx.Panel): def __init__(self,parent): super(MyPanel,self).__init__(parent)class MyApp(wx.App): def OnInit(self): self.frame=MyFrame(parent=None, title= "wxPython Window") self.frame.show() return Trueapp = MyApp()app.MainLoop()
Wyjście powyższego kodu jest jak pokazano poniżej:
Podsumowanie
Więc teraz widzieliśmy 5 bibliotek GUI Pythona i moim zdaniem, PySide2 i pyQt5 są potężniejszymi frameworkami GUI. Ale są one dostarczane z komercyjną licencją i to wyjaśnia dlaczego są one bogate w funkcje. Tkinter, Kivy i wxPython są darmowymi bibliotekami GUI dla Pythona.
Jaka jest twoja ulubiona biblioteka GUI w Pythonie?
Jaka jest twoja ulubiona biblioteka GUI w Pythonie?