<p>I've played around with GTK, TK, wxPython, Cocoa, curses and others. They are are fairly horrible to use.. GTK/TK/wx/curses all seem to basically be direct-ports of the appropriate C libraries, and Cocoa basically mandates using both PyObjC and Interface Builder, both of which I dislike..</p>

<p>The Shoes GUI library for Ruby is great.. It's very sensibly designed, and very "rubyish", and borrows some nice-to-use things from web development (like using hex colours codes, or <code>:color =&gt; rgb(128,0,0)</code>)</p>

<p>As the title says: are there any nice, "Pythonic" GUI toolkits?</p>

[{'answer_id': 35926, 'author': 'Tom', 'author_id': 3715, 'author_profile': 'https://Stackoverflow.com/users/3715', 'pm_score': 1, 'selected': False, 'text': '<p>I\'ve used <a href="http://glade.gnome.org/" rel="nofollow noreferrer">Glade</a> with some success, though I didn\'t manage to wrap my head around creating anything really complex.  It has a nice GUI builder and stores the forms as xml files that are loaded dynamically.  Kind of like XAML afiak.</p>\n'}, {'answer_id': 35935, 'author': 'dF.', 'author_id': 3002, 'author_profile': 'https://Stackoverflow.com/users/3002', 'pm_score': 5, 'selected': True, 'text': '<p>Have you looked at <a href="http://qt.io" rel="nofollow noreferrer">Qt</a>/<a href="http://www.riverbankcomputing.co.uk/software/pyqt/intro" rel="nofollow noreferrer">PyQt</a>? Although PyQt <em>is</em> a direct port from the C++ library, I find it much more pythonic and nice to program with compared to the others you listed. It also has very good documentation.</p>\n\n<p><a href="http://dabodev.com/" rel="nofollow noreferrer">Dabo</a> has a nice ui library implemented on top of wxPython. It\'s a framework intended mostly for database-centric applications, but the ui library can be used separately. </p>\n\n<p>There are/were several other attempts to create a very pythonic gui as a layer on top of PyGtk or wxPython, such as <a href="http://wiki.wxpython.org/Wax" rel="nofollow noreferrer">wax</a> and <a href="http://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/" rel="nofollow noreferrer">PyGui</a>, which seem to be "stuck" at various degrees of being complete.</p>\n\n<p>Also, an exhaustive list of Python GUI toolkits can be found <a href="http://wiki.python.org/moin/GuiProgramming" rel="nofollow noreferrer">here</a>.</p>\n'}, {'answer_id': 35938, 'author': 'Community', 'author_id': -1, 'author_profile': 'https://Stackoverflow.com/users/-1', 'pm_score': 2, 'selected': False, 'text': '<p>Seconding <a href="http://www.riverbankcomputing.co.uk/software/pyqt/intro" rel="nofollow noreferrer">PyQt</a>. Coupled with the book <a href="http://www.qtrac.eu/pyqtbook.html" rel="nofollow noreferrer">Rapid GUI Programming with Python and Qt</a>, it\'s really easy to learn.</p>\n'}, {'answer_id': 36761, 'author': 'Can Berk Güder', 'author_id': 2119, 'author_profile': 'https://Stackoverflow.com/users/2119', 'pm_score': 1, 'selected': False, 'text': "<p>I use pyGtk. I think wxPython is nice but it's too limited, and PyQt is, well, Qt. =)</p>\n"}, {'answer_id': 106696, 'author': 'Ed Leafe', 'author_id': 19399, 'author_profile': 'https://Stackoverflow.com/users/19399', 'pm_score': 4, 'selected': False, 'text': '<p>Please check out Dabo, our framework for desktop applications. <a href="http://dabodev.com" rel="noreferrer">http://dabodev.com</a></p>\n\n<p>We have wrapped the wxPython toolkit for the UI classes, and replaced their ugly C++ style functions with simple properties. You mentioned assigning color: in Dabo, you would do it very simply, using your choice of:</p>\n\n<pre><code>obj.BackColor = "red"\nobj.BackColor = (255, 0, 0)\nobj.BackColor = "FF0000"\nobj.BackColor = "#FF0000"\n</code></pre>\n\n<p>Dabo understands all of these, and handles the differences for you automatically.</p>\n\n<p>I am one of the authors of Dabo, and would be happy to answer any other questions that you may have.</p>\n\n<p>--- Ed Leafe</p>\n'}]
['https://Stackoverflow.com/questions/35922', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/745/']