Mark Summerfield has a lot of Qt experience, having worked as a technical writer for Trolltech, and co-authored the most popular C++ Qt book, which I’ve reviewed a few years ago.
This book is about the PyQt library, which is the Python binding for Qt. It starts by introducing Python in a few chapters, and then moves on to PyQt, beginning with the basics and eventually reaching quite advanced levels.
If you’re planning to use PyQt, this book is highly recommended. Not only does it cover the most important aspects of Qt GUI programming with Python; it also provides numerous helpful examples that aren’t just trivial toys, but really show how to achieve useful things with PyQt. In particular, I’ve found the accompanying source code of the book to be a very valuable resource – it contains full source of all the examples (and solved exercises) in the book, and serves as a great repository of well-written and idiomatic PyQt code to borrow snippets from.
Qt doesn’t only cover GUI programming. It’s a huge and extremely well designed framework for C++ programming, that provides tools for image processing, OS interfacing, data structures, network and thread programming, and much more. While critical for C++, these capabilities are less important for Python programmers, who should prefer the Python standard library. My only nit to pick is that the author seems to prefer the Qt versions of some utilities, which isn’t the right approach IMHO. After all, most PyQt users are Pythonistas looking for a robust GUI platform, not Qt gurus using Python to script their programs.
That said, some of the abilities of Qt do not exist in the standard Python library, and instead of installing them in separate packages, you might be better off with what PyQt has to offer – since the Qt code base it exposes is very robust and efficient.