beginners choice: wx or tk?

Mark Lawrence breamoreboy at
Tue Jul 14 17:43:46 CEST 2015

On 14/07/2015 16:21, Michael Torrie wrote:
> On 07/14/2015 08:06 AM, Grant Edwards wrote:
>> On 2015-07-14, Michael Torrie <torriem at> wrote:
>>> On 07/13/2015 08:42 AM, Grant Edwards wrote:
>>>> If it didn't have to run on Windows, I'd pick pygtk over wx.  I've
>>>> never tried qt.
>>> PyQt is very nice to work with.  In some respects it's not as Pythonic
>>> as PyGTK.  It feels a lot like transliterated C++ code, which it is.
>>> But it's a powerful toolkit and looks great on all supported platforms.
>>> If the licensing terms of PyQt are not to your liking, PySide is fairly
>>> close to PyQt (a few quirks that can be worked around), though I'm not
>>> sure how much love it's receiving lately.  Like wx, or Gtk, you would
>>> have to ship some extra dlls with your project for Windows and OS X.
>> Why would you have to ship "extra" libraries for Windows?  Extra
>> compared to what?  When I compared bundled apps for Windows using wx
>> and Tk, you had to ship more libraries using Tk than you did with wx.
>> Maybe that's changed...
> You make a good point.  Although Tk is considered part of the standard
> Python library (though optional), Tk not only requires some dlls, it
> also embeds the tcl language interpreter as well.  So by some measures,
> Tk in Python is pretty heavy, though I have no idea what the size it
> would add to an application bundle actually is.  I've always thought it
> was a bit crazy how when you use Tk, you're actually using the Tcl
> language as well, even though you're driving it all from Python.  I
> believe there were attempts to separate Tk from Tcl, and allow Perl/Tk
> to replace all the Tcl code with Perl code.

Surely if Tk is optional then IDLE is also optional, as IDLE depends on 
Tk?  But I thought that IDLE was always supplied with Python, so am I 
missing something, or am I simply plain wrong, or what?

My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.

Mark Lawrence

More information about the Python-list mailing list