Don’t waste time bending Python to fit patterns you’ve learned in other languages. Python’s simplicity lets you become productive quickly, but often this means you aren’t using everything the language has to offer. With the updated edition of this hands-on guide, you’ll learn how to write effective, modern Python 3 code by leveraging its best ideas.
Discover and apply idiomatic Python 3 features beyond your past experience. Author Luciano Ramalho guides you through Python’s core language features and libraries and teaches you how to make your code shorter, faster, and more readable.
Complete with major updates throughout, this new edition features five parts that work as five short books within the book:
- Data structures:Â Sequences, dicts, sets, Unicode, and data classes
- Functions as objects:Â First-class functions, related design patterns, and type hints in function declarations
- Object-oriented idioms:Â Composition, inheritance, mixins, interfaces, operator overloading, protocols, and more static types
- Control flow:Â Context managers, generators, coroutines, async/await, and thread/process pools
- Metaprogramming:Â Properties, attribute descriptors, class decorators, and new class metaprogramming hooks that replace or simplify metaclasses
I am a beginner at programming and will value the data in this book.
There are two sections that have helped me the most: Functions as objects and Object-oriented idioms. I was going through many videos, Google searches, and some books to get a deeper understanding of this. this book is helping me to do just that. There is a lot of information in this book. Also, the index is decent. Many technology books lack in having a good one.
Chapter 1 explains the Python object model. It is very eye-opening, and is foundational to the goal of the book--teaching you how to write fluent Python code. The author advises that everyone should read chapter 1, then pick and choose topics of interest from the rest of the book. The topics covered in the next 23 chapters are too numerous to list here, but you are sure to find what you are looking for, unless you are looking for GUI programming, which isn't very elegant, no matter what. But I digress.
This book is hefty, 980 pages long. It is packed with good information, no fluff. Example scripts are stripped down to illustrate precisely the concept being taught. You can run the examples if you want to, but you don't have to in order to learn what is being taught. The text is very well written. I highly recommend this book.