When I start to not get a book, one thing I ask myself is: Am I the target audience for this book? 'Cause, you know, I may need to reflect if the book is actually good for beginners instead of people who already know the topic.
And here is the problem with this book: it does a bad job finding its target.
The reason is simple: the code is full of violations of PEP8, something Python beginners should not be exposed to and something expert developers get pissed.
Now, there is nothing wrong with your weekend projects to not follow standards -- that's perfectly acceptable. But when you have your code published in a book, you must, at least, follow the general guidelines that the community follows.
But let's throw this out of the window: is the book "good"? The answer is mostly "well...". It's not bad, but it isn't really interesting. It is merely ok.