I came to this book as someone who has already learned Python the hard way (by writing lots and lots of really bad code for a really hard class) and not as my first programming language, so I can't offer a perspective on how good a book this is for the average beginner. Perhaps that's not a useful perspective anyway, as most of the average beginners I've come across are lazy. They'd like to be awesome programmers but they don't want to know the theory behind programming or any of the best practices.
I think this is a good book for someone who actually wants to put in the effort to become a good programmer, because it doesn't shy away from talking about the things effective programmers do. It explains unit testing early on - something I've never seen in an introductory programming book and wished could have been in the ones I learned to program in, although I suspect I predated unit testing being a big thing. It points out security issues where they may exist in the provided code. Most importantly, the example projects you work through in the book are all useful things and relatively complicated in their entirety. This is not yet another programming book where you see a lot of snippets of code by the end and know how they all work, but are still scratching your head as to how such things come together to make fully-fledged applications.
The flip side of this is that the code samples do take a while to process fully. I've learned Django cursorily in my own time and was still a bit perplexed by the Django chapters at times. I imagine if I'd been following along with the project examples, instead of just reading out of interest, I'd be doing a lot of online searches and consulting other books and code and maybe other people. But this is, after all, how coding happens when you're on your own with a project. You can't expect to get all your answers from a single text. What is, I think, far more valuable is to see how complete projects look as opposed to toy examples. How many people who learn from those books where you have all the answers on the fringe of your brainpower actually make the leap to producing something useful with their knowledge?
The layout of the book is also very nice, with appealing fonts and an uncluttered feel. I didn't really 'get' the little comics scattered here and there throughout the pages, but they did break up the monotony that reading even pleasant tech books can turn into sometimes, and for not being patronising I thank them endlessly.
I enjoy dipping into introductory programming books for languages I've already learned. This is the first one I've actually read all the way through for a long time - most of them are too dry and take far too long to get to the good code. For a beginner, I suspect this book might work best in conjunction with a good theory text or 'traditional' programming book or ideally both to fill in the gaps where this book skips over the things other books have historically covered in excruciating detail. The fact that you may feel the need to consult other books is a good thing considering, if you are able to make it to the end of this book and you understand everything you have gone through, you should be well-equipped to become a very good programmer.