We've reviewed a lot of Python books for you, and in the time it took to read them, our review format has evolved a little. As often before, there's a freebie included in this post, and as always, we would appreciate your comments. This time, we've decided to present the reviews as short blurbs on each book. That should be sufficient to help you decide if a book is of interest to you or not, while saving you the time needed to read a full-length review. As you can see from the dates, many of these books are rather old, but in my experience it doesn't matter. If anything, I've found that old programming books are often better than what has been published in the last years. While programming languages evolve, at the fundamental level they (generally) remain the same. In other words, don't let the date of publication discourage you (though, absolute beginners may want to look for something like "a byte of python"). Personally, I was both surprised and fascinated by how modern these oldies felt. Since we love our audience, we've included a freebie for you, be sure to check it out! If that's not to your liking, please consider supporting us by making use of the links below as we are an Amazon affiliate. You would help this ambitious project at absolutely no cost to you. In Amazon's legal-speak that becomes: all links to Amazon are paid affiliate links, and as an Amazon affiliate, we earn from qualifying purchases.
Ajith Kumar - Python for Education (2010, FREE link)
I'll throw in a fresh freebie, and it's something special! This publication is available for free on archive.org (please support them as they do a service to all of mankind) and it caters to a rather specific audience: people, and students, looking to use Python to solve all kinds of STEM problems. It covers little of Python itself, but that's OK as it's not the focus of the work. The real centerpiece is an introduction to the wonders of the NumPy and Matplotlib modules. Whether you're trying to solve linear equations, or making pie charts from your data: the book's got you covered. Python is the tool, math is the language. The caveat: it's not for the faint of heart, but it's free - so if this makes you curious at all, give it a shot. While a bit dated, it is the most original - in the sense of unique - Python book I've seen so far, and I keep it at hand just in case a linear equation wants to hurt me.
My Rating: 9/10
Let's be kind and forget about the nonsensical title (sadly, publishers often insist on it). Here we have a book that harks back to the origins of Python. It is surprising how much was written about it in those early days. Although it is a substantial work, I can't put up with the format. I've read plenty of books like this over the years, and I didn't really like any of them. But to be clear: that is just my taste, and doesn't mean that it's a bad book. Ideally - if you're tempted to give it a try - look inside and spend some time on it before you decide. It covers the basics of Python, object oriented programming and, finally Tkinter. Unfortunately things are left unexplained more often than I'd like (which is never). At times it's hard to follow, and people have pointed out that it's probably not a great pick for a novice programmer. Bottom line: there's some interesting stuff in here, but it's a real pain getting to it. Combined with almost 20 years of age, I'd say look somewhere else. Beginners and intermediates without expectations might want to try their luck, if they can get a good deal.
My Rating: 5/10
The code in this book is of very high quality, unlike a lot of other books I've come across. The title is somewhat misleading though. Personally, I was pleased to find out that this book covers a lot more than Tkinter, although it's indeed the main topic. Even twenty years after publication, the references in the appendix save a lot of time and searching, especially since the Tk documentation is a bit out of shape (and date). Unfortunately, structure and explanation is not Grayson's forte. A lot is either hard to comprehend or goes completely unmentioned. You'll find a bit of everything in here, which made me wonder if the author had any kind of plan before he wrote it. In other words it's certainly a book worthwhile having, but it's not for everyone. As they say, your mileage may vary.
My Rating: 7/10
Michael Dawson - Python Programming for the Absolute Beginner, 3rd Edition (2003 - 2010)
A thorough introduction to the Python language. Although some things may not be relevant anymore (another old book), the fundamentals are explained very well. It is one of the few books that manages to explain everything you'll need to get started, and a bit more, in an orderly fashion. A great contrast to all the books that are either disorganized or hard to follow. When I'm told about something, I also expect a clear and thorough explanation of it, and that's what this book does. I liked the author's the idea of presenting the language by using games (even useless ones). It is a pleasant departure from the common fare, of which I've had plenty for a lifetime. As the title says, it's a book for beginners, and if I were to start programming Python today, this is the book I would choose. In spite of its venerable age, I could hardly ask for more. A brilliant piece of work! Caveat emptor: it came to my attention - about halfway through - that there's a 2010 edition of this book. I saw that many people complain that it is outdated, containing non-working links and the like. It seems that, apart from those links and some graphic elements, the new edition isn't all that new. The complaints are valid - and you should definitely have a recent book at your side too - but that doesn't detract from the quality of the original work. While it's certainly not up-to date, it remains relevant today, giving you a solid grounding in Python.
My Rating: 9/10
There's not that much to say about this book: it is easy to follow, but the years have done it no favors. It may once have been a good book for beginners wanting to get their feet wet, as it covers a wide range of topics. Unfortunately it does so very superficially. Nothing that an intermediate (or advanced) programmer needs to read, though beginners might still get something out of it. If they can get a copy that is! As long as you can find it for cheap and don't have great expectations: why not?
My Rating: 3/10
The Code Academy - Python Programming: An In-Depth Guide Into The Essentials Of Python Programming (2017)
A recent publication, for a change. A very approachable book that covers the basics of Python programming, and does so quite well. I've definitely read worse books than this. Considering that it's a bargain, you really can't go wrong by giving this book a shot. Just let me be clear: this is a book for absolute beginners! More experienced coders should seek out something else.
My Rating: 8/10
While it's not a bad book I did't like it. It makes great claims for itself, but at the end of the day, it's just another Python book for beginners. To be clear, it's strictly for beginners - intermediate and advanced coders should look for something else. This book is also quite shoddily written, having many mistakes and even copy & paste errors, some of which can be very confusing if you're just starting out. Honestly, my impression was that there isn't much substance to the whole thing though, to be fair, it gets good reviews on everyone's favorite shopping site and is quite affordable as well. So you might get something out of it, but don't rely on it alone!
My Rating: 4/10
The scores, just like the reviews themselves, are merely an indication of how much I personally liked the contents. I do not claim objectivity (nor should anyone else). If I learned anything, it's that good books for Python beginners are a lot rarer than I had expected. Hopefully you'll find something that suits your needs, either here or in our previous reviews (here, here or here). Please help us achieve our goals by buying a book through the links above. As an Amazon affiliate we earn a little bit of money at no cost to you.