Book Review: Python Programming for the Absolute Beginner

I recently finished  Python Programming for the Absolute Beginners by Michael Dawson and liked it so much that I thought I would review it for others (I sound like Victor Kiam, there!).

So how is it organised? At 455 pages, split into 14 chapters, it’s a weighty tome, but full of really good stuff. It starts off like a lot of technical books, introducing the style and features of the language, before moving onto variables, control statements, data structures, functions and exceptions. Then it moves onto the object oriented facets before finishing with GUIs, graphics and sound. In the course of the book, you will touch upon basic elements of the libraries that come with Python together with Tkinter (for the GUI) and livewires (which is a game programming library).

What I most liked about the book is that there are tangible projects at the end of each chapter so that you can have something to work towards and create, demonstrating what you have learnt. In this regard, it is really good because there is a clear progression between the chapters and what you produce is quite simple yet worthwhile. He explains all his code samples well and there are lots of them.

I guess if I had to describe it, most chapters take the form of explaining what you will create at the end, followed by example programs that demonstrate features leading there, before the final exercise. This is split into pieces and each covered in between code segments.

Some of the examples were great and really showed off how powerful Python is and how cleverly he has designed the programs. E.g. the design of his card game and the pizza throwing (graphical) game had good elements, too.

Is this a comprehensive book? No, but it isn’t meant to be - for a learner (as I am in Python), it gives you a really good taste of what the language and associated libraries can do.

There are only a couple of minor criticisms. I think there were a couple of places where he repeated himself (it didn’t seem deliberate) and the way he tells you where to find the online code is so repetitive:

You can find the code for the program on the companion website (www.courseptr.com/downloads) in the Chapter X folder; the file name is YYY.py

That appears so many times, it did get a little irritating. One other niggle was that he has adapted the livewires package to make it simpler but I couldn’t find out what exactly he had done (in the book) and their website isn’t much help at the moment. Overall though….it’s a great book! Buy it if you are just beginning with Python or are using it at school.


Hi! Did you find this useful or interesting? I have an email list coming soon, but in the meantime, if you ready anything you fancy chatting about, I would love to hear from you. You can contact me here or at stephen ‘at’ logicalmoon.com