This latest addition is very welcome.
As most readers know I am not a fan of programmers who believe that a single language will meet all their programming needs. Once you get past the novice stage you should, in my opinion, have a reasonable selection of languages that you can use with some fluency. On the other hand, only language lawyers and collectors have the time to study every language that crosses their horizons. Several languages support script type, cross platform programming supported by an interpreter. If you are fluent in a language such as Perl then Python may not add enough utility to justify study. However, if you are starting from scratch (even with very little prior knowledge of programming) Python has a great deal to offer. Indeed if I were still teaching adolescents about computing I would seriously consider using Python as an introductory language.
If you have made the decision to try Python your next problem will be to find a book that will answer your needs. There are already several books on the market (several of which have been reviewed in these pages). This latest addition is very welcome.
In the three chapter of Part 1 the authors cover the essentials of getting a version of Python and installing it on your machine. Unlike commercial languages, this is necessary for Python as the main sources of tools are from the Web. You need to know where to go and to have some guidance about installation. I think the authors have it about right, but those unfamiliar with getting material from the Web and installing it on their hardware might be advised to seek additional help.
The authors cover the essentials of Python in Part 2. This is almost half the book. They set a pace and level of detail that the bright novice could manage though they might need to supplement the material with one or more books on general aspects of programming. Other novices would probably need a mentor, or a good teacher. If Python is not your first language then the text should be well within your reach. However, you would be advised to work through the material rather than just skimming. Much of Python source code will seem familiar to those who already program in C, C++, Java etc. but there are differences that can be missed. One feature of Python that may surprise those used to one of the more traditional languages is that indentation is part of the language and not merely cosmetic Part 3 of the book tackles various advanced features. This includes the shortest chapter of the book titled 'Data types as objects.' This is not the place to go into detail but experienced programmers will recognise that concept and will realise that it indicates that Python has a lot of interesting potential.
The final part of the book deals with the ways that Python interacts with other aspects of programming. The five chapters cover (perhaps too briefly) Python and COM, extending Python with C and C++, JPython (for use with the JVM), HTML and Python and finally 'Zope.' The title of the book is a little misleading, but we are all used to that. However it will give you an introduction to Python. If you start by skimming the material, I think you will finish by spending time studying and being fascinated by the potential this language has for the more imaginative programmer.
Finally, as editor of C Vu, I would very much welcome articles on Python programming, comparisons between Perl and Python, and reasons why a C, C++ or Java programmer might find skills in Perl or Python useful.