There are many GUI modules for Python. One of them is Tkinter. So what about Tkinter?
Maybe. If your program doesn't need complex GUI widgets or a native GUI.
If you need many widgets and native operating system look, it may be better to go with the PyQt5 module.
Tkinter has been around for a long long time. It contains the basic widgets
- Button, Checkbutton, Menubutton, Radiobutton
- Label, LabelFrame
- Menu ... and so on.
So you can build basic GUI interfaces. But it doesn't have an enormous list of widgets.
On the other hand, it has an easy learning curve. The hello world program looks like this:
#!/usr/bin/python3 import tkinter as tk class Application(tk.Frame): def __init__(self, master=None): super().__init__(master) self.master = master self.pack() self.create_widgets() def create_widgets(self): self.hi_there = tk.Button(self) self.hi_there["text"] = "Hello World\n(click me)" self.hi_there["command"] = self.say_hi self.hi_there.pack(side="top") self.quit = tk.Button(self, text="QUIT", fg="red", command=self.master.destroy) self.quit.pack(side="bottom") def say_hi(self): print("hi there, everyone!") root = tk.Tk() app = Application(master=root) app.mainloop()