Python's simplicity lets you become productive quickly but often this means you aren't using
everything it 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. Don't waste time bending
Python to fit patterns you learned in other languages. 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. Featuring major updates throughout the book Fluent Python second edition covers:
Special methods: The key to the consistent behavior of Python objects 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 static typing and protocols
Control flow: Context managers generators coroutines async await and thread process pools
Metaprogramming: Properties attribute descriptors class decorators and new class
metaprogramming hooks that are simpler than metaclasses