beginners choice: wx or tk?

Laura Creighton lac at
Sat Jul 11 13:27:13 CEST 2015

In a message of Sat, 11 Jul 2015 09:28:43 -0000, Ulli Horlacher writes:
>I want to start a project with python.
>The program must have a (simple) GUI and must run on Linux and Windows.
>The last one as standalone executable, created with pyinstaller.
>I have already an implementation in perl/tk :
>I am not really happy with tk, because it has some bugs, at least its perl
>integration. I have never used wx.
>What is the recommendation for a python beginner: wx or tk?
>Ullrich Horlacher              Server und Virtualisierung
>Rechenzentrum IZUS/TIK         E-Mail: horlacher at
>Universitaet Stuttgart         Tel:    ++49-711-68565868
>Allmandring 30a                Fax:    ++49-711-682357
>70550 Stuttgart (Germany)      WWW:

If you already have a tk version, then tkinter will be a whole lot
more familiar with you.  The question is, why do you want to reimplement
this thing in Python?  If the plan is to get rid of some perl and tk
bugs, then it would be good to check if the bugs exist in tkinter +
python as well.

One of the strengths of wxPython was supposed to be that the signatures
of things was very like what windows developers were already used to
when writing windows code.  Since I never had a windows machine to
develop code on, I wasn't one of the people who was already used to
things like this, so that was no benefit to me.  I tried it for a bit
and discovered I liked PyQT better, so I learned that instead.  But
I don't think that this means that one is better than the other, so
much as 'try them for a bit and see what you like'.

Tk works with Python 3.  wxPython doesn't yet.  So if your porting is
being done 'because I want to learn Python' then it is probably Python
3 you want to learn, so that's a strong reason to use tkinter.

Also, if you need your app to work with MacOS, be warned that you
will need an older version of tk than the most recent one.
This information is current:
Don't use 8.6

I'd also recommend kivy, which has the added advantage that if
somebody wants to use your app from a cellphone or a tablet, it
will just work.  see:


More information about the Python-list mailing list