The second edition of Mastering Python is a hefty beast weighing in at 18 chapters and around 600 pages of content. It covers a wide range of topics in Python including philosophy, advanced class design, performance, multithreading, documentation, testing, and specialized uses of Python for data science and AI.
Note: I received a copy of this book for free as a reviewing copy from the publisher, but I have received no other compensation for this review.
This is a book that's going to best help two types of people:
- If you're a few years in on Python and want to see what else the language can do, this book is going to push you to new heights
- If you're coming to Python from another programming language, this will help you transfer your skills and knowledge by frequently relating concepts to concepts in other languages and orienting you to the Pythonic way of doing things.
As an expert .NET developer expanding my knowledge into Python, I fall firmly into the second profile. I learned many new aspects of Python from reading this book. Additionally, in the data science areas where I'm strongest in Python, the book surprised me by introducing me to a library or two I hadn't heard of (and now plan on using in my next project).
However, this is not a book for everyone. If you are starting out in Python, this book is too advanced for you and skips covering the basics of the Python language in lieu of a focus on more advanced areas. Start with other books, courses, and projects, then come back to this book.
My only gripes with the book are that many of the code samples are screenshots with white text on black backgrounds. On my printing this was fine, but it could lead to misprints. I also would have liked to have seen one or two quiz style questions at the end of each chapter to help cement concepts, but the book is already long enough.
This is a book at has earned its place on my bookshelf as a reference book as I continue to drill deeper into Python. I definitely recommend it, and encourage you to read it in random order in the areas most of interest to you.