This article, discusses about the various toolkits to make a GUI Application in Python3. It is easy to start programming a GUI application after gaining basic python and OOP knowledge. The top five GUI toolkits and a brief overview on each of them is discussed below.
1. TKinter :
TKinter is an open source and standard GUI toolkit for Python. TKinter is a wrapper around tcl / TK graphical interface. TKinter is popular because of its simplicity and having very old and active community. Also, it comes included with most binary distributions of Python. TKinter is fully potable for Macintosh, Windows and Linux platforms. It’s a good toolkit to start with, since TKinter is mostly preferred for small scale GUI applications.
A simple TKinter window :
Python doc for TKinter : https://docs.python.org/3/library/tk.html
2. PyQt :
PyQt toolkit is a wrapper around QT framework. PyQt is one of most loved cross platform Python binding over C++ implementing QT-library for QT framework. PyQT can be used for large scaled GUI application, since it takes no time to develop GUI. One can simply design the window using QT designer and easily convert the .UI code to .PY (Python) code and after that logics can be bind to each widget. But at the beginning stage of learning PyQt, writing code manually is always a good practice, because that how you actually learn.
A simple PyQt window :
Official Link : https://riverbankcomputing.com
3. PySide :
Just like PyQt, PySide is also a Python binding of the cross-platform GUI toolkit Qt. PySide was released by Nokia (the former owners of the Qt toolkit) with LGPL-licence, after Nokia failed to reach an agreement with PyQt developers Riverbank Computing to change its licensing terms to include LGPL as an alternative license. It’s totally upto developer’s choice, whether he/she wants to use PyQt or Pyside.
4. PyGTK :
PyGTK is an open source software, comes under LGPL licence service. PyGTK is a cross platform widget toolkit. PyGTK is the standard toolkit for GNOME. You can find good number of Linux platform GUI, which are developed with PyGTK.
Documentation link for PyGTK : http://www.pygtk.org
5. Kivy :
Kivy is a OpenGL accelerated framework, very popular among developers for developing GUI apps. Kivy is an opensource Python library, which can also be used for developing NUI (Natural User Interface). With Kivy, mobile applications and other multitouch application softwares can be developed. Applications developed with Kivy can run on Android, IOS, Linux and Windows. Developing application using Kivy is really interesting. If you ever heard about this awesome android app ‘2048’, it is developed using Kivy.
Image_source : https://kivy.org/#gallery
- Itertools in Python3
- Introduction to Python3
- How to write Comments in Python3?
- How to print spaces in Python3?
- How to implement Dictionary with Python3?
- New '=' Operator in Python3.8 f-string
- Why PyPy3 is preffered over Python3?
- Positional-only Parameter in Python3.8
- Python3 Intermediate Level Topics
- Setting python3 as Default in Linux
- Different Input and Output Techniques in Python3
- Automate the Conversion from Python2 to Python3
- Python3 - if , if..else, Nested if, if-elif statements
- Convert String to Double in Python3
- Python2 vs Python3 | Syntax and performance Comparison
- Python Wand – An Overview
- Python Matplotlib - An Overview
- Overview of Kalman Filter for Self-Driving Car
- Timer Application using PyQt5
- PyQt5 - GUI Application to get IP address
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.