Customers who viewed this item also viewed
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the author
OK
Fluent Python: Clear, Concise, and Effective Programming 2nd Edition
Purchase options and add-ons
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
- ISBN-101492056359
- ISBN-13978-1492056355
- Edition2nd
- PublisherO'Reilly Media
- Publication dateMay 10, 2022
- LanguageEnglish
- Dimensions7 x 2 x 9.25 inches
- Print length1012 pages
Frequently bought together

Deals on related products
Customers also bought or read
- Effective Python: 125 Specific Ways to Write Better Python (Effective Software Development Series)
Paperback$52.80$52.80FREE delivery Thu, Mar 5 - Architecture Patterns with Python: Enabling Test-Driven Development, Domain-Driven Design, and Event-Driven Microservices
Paperback$37.10$37.10FREE delivery Thu, Mar 5 - Powerful Python: Patterns and Strategies with Modern Python
Paperback$39.89$39.89FREE delivery Thu, Mar 5 - Python for Data Analysis: Data Wrangling with pandas, NumPy, and Jupyter
Paperback$43.99$43.99FREE delivery Thu, Mar 5 - Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming#1 Best SellerPython Programming
Paperback$27.53$27.53Delivery Thu, Mar 5 - Serious Python: Black-Belt Advice on Deployment, Scalability, Testing, and More
Paperback$32.74$32.74Delivery Thu, Mar 5 - Python Testing with pytest: Simple, Rapid, Effective, and Scalable
Paperback$45.95$45.95FREE delivery Thu, Mar 5 - Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
Paperback$49.50$49.50FREE delivery Thu, Mar 5 - Effective Python: 90 Specific Ways to Write Better Python (Effective Software Development Series)
Paperback$65.65$65.65FREE delivery Mar 25 - 30 - Designing Machine Learning Systems: An Iterative Process for Production-Ready Applications
Paperback$40.00$40.00FREE delivery Thu, Mar 5 - Python Data Science Handbook: Essential Tools for Working with Data
Paperback$44.18$44.18FREE delivery Thu, Mar 5 - Operating Systems: Three Easy Pieces#1 Best SellerComputer Operating Systems Theory
Paperback$28.27$28.27Delivery Thu, Mar 5 - CPython Internals: Your Guide to the Python 3 Interpreter
Paperback$39.99$39.99FREE delivery Thu, Mar 5 - The Pragmatic Programmer: Your Journey To Mastery, 20th Anniversary Edition (2nd Edition)#1 Best SellerSoftware Testing
Hardcover$45.68$45.68$3.99 delivery Mar 20 - 25 - Practical Statistics for Data Scientists: 50+ Essential Concepts Using R and Python
Paperback$40.25$40.25FREE delivery Mar 16 - 20 - Hands-On Large Language Models: Language Understanding and Generation
Paperback$47.69$47.69FREE delivery Thu, Mar 5 - Modern Python Cookbook: 130+ updated recipes for modern Python 3.12 with new techniques and tools
Paperback$25.19$25.19Delivery Thu, Mar 5 - Essential Math for Data Science: Take Control of Your Data with Fundamental Linear Algebra, Probability, and Statistics
Paperback$37.10$37.10FREE delivery Thu, Mar 5
From the brand
-
Learn Python
-
Python performace
-
Python for Data Science
-
Sharing the knowledge of experts
O'Reilly's mission is to change the world by sharing the knowledge of innovators. For over 40 years, we've inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.
Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.
From the Publisher
From the Preface
“Python is an easy to learn, powerful programming language.” Those are the first words of the official Python 3.10 tutorial. That is true, but there is a catch: because the language is easy to learn and put to use, many practicing Python programmers leverage only a fraction of its powerful features.
An experienced programmer may start writing useful Python code in a matter of hours. As the first productive hours become weeks and months, a lot of developers go on writing Python code with a very strong accent carried from languages learned before. Even if Python is your first language, often in academia and in introductory books it is presented while carefully avoiding language-specific features.
As a teacher introducing Python to programmers experienced in other languages, I see another problem that this book tries to address: we only miss stuff we know about. Coming from another language, anyone may guess that Python supports regular expressions, and look that up in the docs. But if you’ve never seen tuple unpacking or descriptors before, you will probably not search for them, and you may end up not using those features just because they are specific to Python.
This book is not an A-to-Z exhaustive reference of Python. Its emphasis is on the language features that are either unique to Python or not found in many other popular languages. This is also mostly a book about the core language and some of its libraries. I will rarely talk about packages that are not in the standard library, even though the Python package index now lists more than 60,000 libraries, and many of them are incredibly useful.
Who This Book Is For
This book was written for practicing Python programmers who want to become proficient in Python 3. I tested the examples in Python 3.10—most of them also in Python 3.9 and 3.8. When an example requires Python 3.10, it should be clearly marked.
If you are not sure whether you know enough Python to follow along, review the topics of the official Python tutorial. Topics covered in the tutorial will not be explained here, except for some features that are new.
Who This Book Is Not For
If you are just learning Python, this book is going to be hard to follow. Not only that, if you read it too early in your Python journey, it may give you the impression that every Python script should leverage special methods and metaprogramming tricks. Premature abstraction is as bad as premature optimization.
Editorial Reviews
About the Author
Product details
- Publisher : O'Reilly Media
- Publication date : May 10, 2022
- Edition : 2nd
- Language : English
- Print length : 1012 pages
- ISBN-10 : 1492056359
- ISBN-13 : 978-1492056355
- Item Weight : 2.31 pounds
- Dimensions : 7 x 2 x 9.25 inches
- Best Sellers Rank: #25,355 in Books (See Top 100 in Books)
- #3 in Object-Oriented Design
- #10 in Python Programming
- #13 in Software Development (Books)
- Customer Reviews:
About the author

Luciano Ramalho was a Web developer before the Netscape IPO in 1995, and switched from Perl to Python in 1998. He has presented talks at PyCon US, OSCON, QCon, PythonBrasil, PyCon DE etc. Ramalho is a fellow of the Python Software Foundation and co-founder of Garoa Hacker Clube, the first hackerspace in Brazil. He is a Principal Consultant at Thoughtworks.
Related products with free delivery on eligible orders
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Generated from the text of customer reviewsSelect to learn more
Reviews with images
Book arrived in excellent condition, however...
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on December 19, 2025Format: PaperbackVerified PurchaseGreat book! It explains the parts of python you might not learn any where else. A must have for python enthusiasts.
- Reviewed in the United States on December 19, 2023Format: PaperbackVerified PurchaseThis is an excellent book for learning how to use the Python language proficiently. It is written for experienced developers, especially those who are experts in another language, but want to use Python effectively and elegantly.
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.
- Reviewed in the United States on March 23, 2024Format: PaperbackVerified PurchaseFirst of all, let me just say that this isn't a book at all, it is some tome some wise ancient scribe wrote. I have been working in Technology for over 20 years now and I have been interested in it for probably another 20 years before that. In that time I have read many programming books, constantly looking for more advanced topics. I would read and be very disappointed, they were mostly always filled with fluff. I recently decided to finally give Python a try. I am at a point where I am doing more advanced projects and wanted a book to do just that. When I go to Stack Overflow or other sites like that for information. I want to be able to really understand the why behind some of the explanations. I don't want just to copy and paste. The book Python Crash Course helped get the basics down, this book has helped with the more advanced structure.
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.
- Reviewed in the United States on February 15, 2026Format: PaperbackVerified PurchaseMy primary source for learning advanced Python
-
Reviewed in the United States on January 15, 2026Format: PaperbackVerified PurchaseExcelente, vino en muy buenas condiciones , muy satisfecho con la compra
- Reviewed in the United States on November 10, 2025Format: PaperbackVerified PurchaseOK book for learning Python. I also recommend another brand for the book to learn Python, which is published by deBarros. I am studying data science with an expected graduation date of July 2026and have several of the data science and programming books made by deBarros
- Reviewed in the United States on December 25, 2025Format: PaperbackVerified PurchaseGreat book for those that are getting started on Data Engineering.
- Reviewed in the United States on August 3, 2024Format: PaperbackVerified PurchaseI am keeping this on my bookshelf as i gain experience in python programming. A quick glance through the book shows a great way to advance in your programming skills once you have an understanding of the basics.
I am a beginner at programming and will value the data in this book.
Top reviews from other countries
AthlosReviewed in Japan on April 8, 20255.0 out of 5 stars Best book on Python
Format: PaperbackVerified PurchaseGreat content
-
Leonardo S.Reviewed in Brazil on November 20, 20235.0 out of 5 stars Excelente livro, mas não é para iniciantes.
Format: PaperbackVerified PurchaseO livro é excelente e aprofunda vários (todos?) aspectos da linguagem. Não é um livro para iniciantes — se você for um, não compre esse livro agora —, mas para aqueles que já possuem no mínimo conhecimento intermediário de Python (o próprio autor menciona isso), visto que ele fornece um "algo a mais" àquilo que você sabe/acha que sabe. Acredito que seja o livro definitivo para programadores Python.
Ayoub HaidaReviewed in Sweden on January 3, 20251.0 out of 5 stars Bad experience
Format: PaperbackVerified PurchaseThe book was ruined, I don't know if it's the shipping service, or something else, plus I thought it's colored not a 700sek for a BW version, trash
The book was ruined, I don't know if it's the shipping service, or something else, plus I thought it's colored not a 700sek for a BW version, trash1.0 out of 5 stars
Ayoub HaidaBad experience
Reviewed in Sweden on January 3, 2025
Images in this review
TekSkillReviewed in Canada on May 7, 20255.0 out of 5 stars Not for Novice but for Deep divers
Format: PaperbackVerified PurchaseExcellent book for understanding and must be used as a reference. It is not for the beginner and as such should not be expected as a tutorial. Once the basics are mastered, then this book comes in to explain why the way things work. For example, if you want to know what a higher order function is and how a map function works, this book is there for you. The indexing is excellent with alphabetical ordering. Deep dive with this book by your side is all I would say. Have not read even a quarter of the book but already impressed. Definitely a desktop reference.
-
FantaReviewed in Italy on November 13, 20225.0 out of 5 stars Un classico per la programmazione in Python
Format: PaperbackVerified PurchaseUn libro per chi gia' programma in Python, che copre l'uso idiomatico del linguaggio. La nuova edizione supera le 1000 pagine!
























