Fluent Python: Clear, Concise, and Effective Programming
J**N
Excellent Resource. Well written.
I am an engineer who decided to learn how to code on my own. I experimented with a bunch of different languages but fell in love with Python. I now use Python for personal projects. I was watching a YouTube video where Gina Häußge (creator of octoprint) recommended it and attributed her work to things learned in the book. So I bought it hoping to better my skills.I read this book in chapter chunks, as there is a TON of information to gain from this book. I love the structure that Ramalho uses. He provides well written descriptions and explanations for each topic(something I cannot say for most textbooks). On top of that, he provides relevant code examples for almost everything he covers. Even better, he has step-by-step explanations for the code examples that follow the execution flow. This makes it much easier to understand if you have difficulty grasping the concept at first. Aside from coding the examples yourself, this is top notch for learning skills from text.For me, I was reading this book while working on a medium sized Python project. Even though I was not searching for anything specific in this book, the more I read, the more I found ways where I could implement his teachings into my project.Ramalho includes a section at the end of each chapter to offer his opinion on said topic. As a younger programmer, I appreciated the opinion from a professional and clearly well respected member of the Python community.If you write Python and want to gain a better understanding of the language (and perhaps found the Python docs hard to read like me), this book is for you. If you do give it a read, I hope you like it as much as I did.Thanks Luciano, excellent work!
Z**H
Aptly Named, Fluent Python
As the title and description suggest, this book truly is to achieve 'fluency' in Python. It touches on nearly every point of the language that is pythonic, describing not just the how and the what, but the why. This book is definitely not a good beginner book for Python (however, someone extremely well versed in Java or C++ could probably benefit from it, if they relied on more basic information from alternative sources), but I wouldn't say it's only for expert users. This book touches on a very wide selection of subjects, from some pretty common Python concepts, like Duck Typing, generators, and function and class decorators to more advanced subjects like abstract base classes, multiple inheritance, mixins, and meta programming. The prose is easy to read and even entertaining. It may be the first programming book I read for enjoyment, and not just reference.Luciano demonstrates that he truly is fluent in Python, and while probably 25% of the chapters were not on any subject that is useful to me, all of them yielded new information and helpful hints, and even tips and tricks to increase performance or readability of the code. I would think that, given the wide range of topics, at least 30% of the book will be extremely helpful to your specific use case, regardless of what that is.
J**L
Great book if you want to know more than "How to" but "Why to"
I have been using Python for a few years mostly as a scripting language. As I have gained proficiency I wanted to dive deeper into best practices and a bit more under-the-covers. I found some good resources online for studying Python internals but that was not helping me write better code.This book is exactly what I was looking for. It covers the aspects of Python that are not obvious to people coming from different languages. It gives guidance on the best ways to use features and why they work the way they do. It touches on details of Python internals where they illuminate the behavior and choices a Python programmer might make but you won't get bogged down in Python byte code.This is not a book for beginners. It assumes a fair bit of knowledge. A beginner will want a wider coverage of topics and not get buried in details. (I really like "Learning Python" by Mark Luft and still go back to that from time to time.) This is for the Python programmer leveling-up. That is where I found myself and I am pretty confident this will help me get there.
A**R
Fantastic book - slightly outdated for certain topics
The book is well written, clear, includes examples, author clearly knows the language very well and the way he talks about it shows how the programmer should be thinking. However, some syntax is slightly outdated, this is mostly harmless except for the chapter on asyncio, in which the module's interface has been integrated into the language with new "async/await" keywords. The author does make a note that at the time of writing the PEP that eventually introduced this chance was close to acceptance. Conceptually it is the same but the examples are not so relevant to how asyncio code is written in newer versions of Python.
J**S
The perfect book for intermediate programmers
This book is spectacular for intermediate Python programmers. I've been programming for a year or so with Python and this book helped me improve my coding a lot. I'm not exaggerating when I say that it is the best programming book I've ever read. It's full of clever insights, smart examples that make you get the exact point Luciano is trying to make, and neat suggestions on how to be pythonic. I have read a couple of books on Python and Ruby and I usually end up quickly scanning some pages or even whole chapters that I find either unnecessarily verbose on a simple matter, or just plain boring. I didn't have to do that at all with this book: I enjoyed the reading of every bit.The code examples also made me realize how stuff can be done in many subtle ways, besides the "main point" of the example, and in that aspect you can tell Luciano is a great pedagogue. The chapters about asynchronous programming helped me get a grasp of a way of structuring programs that I didn't conceive of before.I've read the whole thing in 2 months or so of ~daily 25' reading (i.e. one pomodoro ;). It's a must read of the Python literature.
Trustpilot
1 week ago
1 day ago