DEV Community

natamacm
natamacm

Posted on

What are the best ways to make GUIs in Python?

There are many modules that you can use to build GUIs. They have different widgets and features. What is best ultimately depends on your business requirements. I suggest trying them all out and seeing what works for you.

One of the standard GUI modules is Tkinter, which is quite good but limited in the number of widgets that are available.

PyQt is a popular choice, it has loads of widgets and works on many platforms. It comes with a drag and drop designer that saves you a lot of time. But it's not native.

designer

wxPython is a module that is native, you get the native OS widgets on every platform. But the downside of this is that those widgets may be available on one platform but not the other. It also has less support.

JPython gives Python access to Java, this is something you could use if you like. That way you can run Python from Java or Java from Python.

There's Kivy, which is designed around touch interfaces and thus doesn't really have the desktop look.

kivy

Another option is to go the Web App route with a module like Flask. The good thing here is that you have all the web available and it will look the same everywhere, downside is you need to run a server.

Top comments (0)