The most recommended python books

Who picked these books? Meet our 17 experts.

17 authors created a book list connected to python, and here are their favorite python books.
Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

What type of python book?

Loading...
Loading...

Book cover of Python for Everyone

Daniel Zingaro Author Of Learn to Code by Solving Problems: A Python Programming Primer

From my list on for a rock solid python programming foundation.

Why am I passionate about this?

Some programmers learn through online articles, videos, and blog posts. Not me. I need a throughline—a consistent, expert distillation of the material to take me from where I am to where I want to be. I am not good at patching together information from disparate sources. I need a great book. I have a PhD in computer science education, and I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for a rock solid python programming foundation

Daniel Zingaro Why did Daniel love this book?

I used this book for several years starting in 2013 when the first edition came out. It absolutely holds up today. Learning the Python language (the syntax) is one thing. Learning how to design programs using this syntax is another. We need both but, unfortunately, many books forgo the latter for the former. Not this book! I like the Problem Solving and Worked Example sections: they help learners apply a disciplined, step-by-step strategy to programming projects. There are multiple, varied contexts here as well, which helps capture a broader base of learners. Bonus feature: the Computing & Society boxes.

By Cay S. Horstmann, Rance D. Necaise,

Why should I read it?

1 author picked Python for Everyone as one of their favorite books, and they share why you should read it.

What is this book about?

Python for Everyone, 3rd Edition is an introduction to programming designed to serve a wide range of student interests and abilities, focused on the essentials, and on effective learning. It is suitable for a first course in programming for computer scientists, engineers, and students in other disciplines. This text requires no prior programming experience and only a modest amount of high school algebra. Objects are used where appropriate in early chapters and students start designing and implementing their own classes in Chapter 9. New to this edition are examples and exercises that focus on various aspects of data science.


Book cover of Python for Everybody: Exploring Data in Python 3

Daniel Zingaro Author Of Learn to Code by Solving Problems: A Python Programming Primer

From my list on for a rock solid python programming foundation.

Why am I passionate about this?

Some programmers learn through online articles, videos, and blog posts. Not me. I need a throughline—a consistent, expert distillation of the material to take me from where I am to where I want to be. I am not good at patching together information from disparate sources. I need a great book. I have a PhD in computer science education, and I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for a rock solid python programming foundation

Daniel Zingaro Why did Daniel love this book?

Learning to program is hard. We need teachers who remember this, who are patient, who support the learning process, who not only know how to teach but also know how to learn from their teaching. Severance is all of these things. I like the breezy but precise writing, sections on debugging, glossaries and exercises in each chapter, and discussion of common learner errors. Bonus feature: regular expressions.

By Charles R. Severance,

Why should I read it?

1 author picked Python for Everybody as one of their favorite books, and they share why you should read it.

What is this book about?

Python for Everybody is designed to introduce students to programming and software development through the lens of exploring data. You can think of the Python programming language as your tool to solve data problems that are beyond the capability of a spreadsheet.

Python is an easy to use and easy to learn programming language that is freely available on Macintosh, Windows, or Linux computers. So once you learn Python you can use it for the rest of your career without needing to purchase any software.

This book uses the Python 3 language. The earlier Python 2 version of this book…


Book cover of The Mythical Man-Month: Essays on Software Engineering

Paolo Perrotta Author Of Programming Machine Learning: From Coding to Deep Learning

From my list on classic software that are still worth reading.

Why am I passionate about this?

You know what ages like milk? Programming books. I always cringe when someone glances at my programming bookshelf. Some of those books are so dated, they make me appear out of touch by association. Sometimes, I feel compelled to justify myself. “Yes, that's the first edition of Thinking in Java I keep it for nostalgic reasons, you know!” Yesterday’s software book is today’s fish and chip wrapper. However, there are exceptions. A few classics stay relevant for years, or even decades. This is a shortlist of software books that might be older than you, but are still very much worth reading.

Paolo's book list on classic software that are still worth reading

Paolo Perrotta Why did Paolo love this book?

In my consulting gigs, I come across plenty of clueless remarks. Here's a classic one: “We're falling behind schedule, so let's hire more coders.” Or a more recent gem: “We'll be ten times more productive if we generate code with AI.”

When I encounter such nonsense, I don't facepalm or cringe. Instead, I put on my poker face and drop a quote from The Mythical Man-Month.

In an industry where last year’s book is already outdated, Fred Brooks' collection of essays has been a guiding light for nearly half a century. His aphorisms have become legendary. “The bearing of a child takes nine months, no matter how many women are assigned.” “Adding manpower to a late software project makes it later.” “There is no silver bullet.” The list goes on and on.

John Carmack, one of the greatest programmers of our times, used to revisit this book every year or…

By Frederick P. Brooks Jr,

Why should I read it?

5 authors picked The Mythical Man-Month as one of their favorite books, and they share why you should read it.

What is this book about?

Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time.



The added chapters…


Book cover of Beyond the Basic Stuff with Python: Best Practices for Writing Clean Code

Naomi R. Ceder Author Of The Quick Python Book

From my list on to level up your Python skills.

Why am I passionate about this?

I’ve been teaching and writing Python code (and managing others while they write Python code) for over 20 years. After all that time Python is still my tool of choice, and many times Python is the key part of how I explore and think about problems. My experience as a teacher also has prompted me to dig in and look for the simplest way of understanding and explaining the elegant way that Python features fit together. 

Naomi's book list on to level up your Python skills

Naomi R. Ceder Why did Naomi love this book?

Al is one of the clearest writers on Python that I know. Here he distills his experience as both a working software engineer and a successful author to take coders from advanced beginner/intermediate level on to all of the “extra” knowledge one needs to write good code for practical use. When I read this book I find myself wishing I could write with such simplicity.

By Al Sweigart,

Why should I read it?

1 author picked Beyond the Basic Stuff with Python as one of their favorite books, and they share why you should read it.

What is this book about?

You're a student who wants to jumpstart their career with practical skills, or you're a self-taught beginner who has learned all you can from beginner programmer books and coding bootcamps. Now you're looking for the next step to becoming a real-world professional programmer so you can create your own apps and get started with your career. If that fits, then this book is for you! This book is perfect for self-taught programmers looking for the stuff intro books don't teach you and students wanting to get practical information before getting started with applying their new programming skills.


Book cover of Lightweight Django: Using REST, WebSockets, and Backbone

Arun Ravindran Author Of Django Design Patterns and Modern Best Practices

From my list on Django for building solid web apps in Python.

Why am I passionate about this?

I’ve been dabbling in Python for the last 22 years. I am a regular speaker at Pycon India ever since its inception. Most of my talks are related to Django. I host arunrocks.com where I write tutorials, and articles and publish screencasts on several Django and Python topics. My initial screencast titled "Building a blog in 30 mins with Django" is one of the most popular screencasts for beginners in Django. I’m a developer member of the Django Software Foundation.

Arun's book list on Django for building solid web apps in Python

Arun Ravindran Why did Arun love this book?

This is a very well-written book that covers some less covered areas like how to write the most minimal Django application or integrating with Tornado server. The book is short and quite engaging. This is not exactly a book for an impatient beginner as it takes time to build the concepts. Also, the book might be a bit dated since it was last updated in 2014.

By Julia Elman, Mark Lavin,

Why should I read it?

1 author picked Lightweight Django as one of their favorite books, and they share why you should read it.

What is this book about?

How can you take advantage of the Django framework to integrate complex client-side interactions and real-time features into your web applications? Through a series of rapid application development projects, this hands-on book shows experienced Django developers how to include REST APIs, WebSockets, and client-side MVC frameworks such as Backbone.js into new or existing projects. Learn how to make the most of Django's decoupled design by choosing the components you need to build the lightweight applications you want. Once you finish this book, you'll know how to build single-page applications that respond to interactions in real time. If you're familiar with…


Book cover of Deep Learning with Python

Jakub Langr Author Of GANs in Action: Deep Learning with Generative Adversarial Networks

From my list on applied deep learning.

Why am I passionate about this?

I’ve been working in machine learning for about a decade. I’ve always been more interested in applied than theoretical problems and while blogs and MOOCs (Massive Online Open Courses) are a great way to learn, for certain deep topics only a book would do. I also teach at University of Oxford, University of Birmingham, and various FTSE100 companies. My machine learning has exposed me to many fascinating problems—from leading my own ML-focused startup through Y Combinator—to working at various companies as a consultant. I think there is currently no great curriculum for the practitioners really wanting to apply deep learning in practical cases, so I have given it my best shot.

Jakub's book list on applied deep learning

Jakub Langr Why did Jakub love this book?

This is a fantastic book to get you started. It is written by the author of a leading deep learning framework Keras, which makes even Tensorflow very easy to use. Chollet is a true leader of the deep learning craft and the Manning team always does an excellent job of forcing authors to make the subject matter accessible. Highly recommended!

By Francois Chollet,

Why should I read it?

2 authors picked Deep Learning with Python as one of their favorite books, and they share why you should read it.

What is this book about?

"The first edition of Deep Learning with Python is one of the best books on the subject. The second edition made it even better." - Todd Cook

The bestseller revised! Deep Learning with Python, Second Edition is a comprehensive introduction to the field of deep learning using Python and the powerful Keras library. Written by Google AI researcher Francois Chollet, the creator of Keras, this revised edition has been updated with new chapters, new tools, and cutting-edge techniques drawn from the latest research. You'll build your understanding through practical examples and intuitive explanations that make the complexities of deep learning…


Book cover of Deep Learning for Coders with Fastai and Pytorch: AI Applications Without a PhD

Jakub Langr Author Of GANs in Action: Deep Learning with Generative Adversarial Networks

From my list on applied deep learning.

Why am I passionate about this?

I’ve been working in machine learning for about a decade. I’ve always been more interested in applied than theoretical problems and while blogs and MOOCs (Massive Online Open Courses) are a great way to learn, for certain deep topics only a book would do. I also teach at University of Oxford, University of Birmingham, and various FTSE100 companies. My machine learning has exposed me to many fascinating problems—from leading my own ML-focused startup through Y Combinator—to working at various companies as a consultant. I think there is currently no great curriculum for the practitioners really wanting to apply deep learning in practical cases, so I have given it my best shot.

Jakub's book list on applied deep learning

Jakub Langr Why did Jakub love this book?

Jeremy Howard is the lead author and has always been a world-class educator. This book is based on his fast.ai course, which has managed to splice all rigor, simplicity, and cutting edge techniques into one course. It also uses its custom fast.ai framework built on PyTorch, which is the dominant language for researchers. This book is very practically oriented and gets you off the ground very quickly with your own projects!

By Jeremy Howard, Sylvain Gugger,

Why should I read it?

2 authors picked Deep Learning for Coders with Fastai and Pytorch as one of their favorite books, and they share why you should read it.

What is this book about?

Deep learning is often viewed as the exclusive domain of math PhDs and big tech companies. But as this hands-on guide demonstrates, programmers comfortable with Python can achieve impressive results in deep learning with little math background, small amounts of data, and minimal code. How? With fastai, the first library to provide a consistent interface to the most frequently used deep learning applications.

Authors Jeremy Howard and Sylvain Gugger, the creators of fastai, show you how to train a model on a wide range of tasks using fastai and PyTorch. You'll also dive progressively further into deep learning theory to…


Book cover of Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow: Concepts, Tools, and Techniques to Build Intelligent Systems

Valliappa Lakshmanan Author Of Machine Learning Design Patterns: Solutions to Common Challenges in Data Preparation, Model Building, and Mlops

From my list on to become a machine learning engineer.

Why am I passionate about this?

I have been building real-time, production machine learning models for over 20 years. My book, and my book recommendations, are informed by that experience. I have a lot of empathy for people who are new to machine learning because I’ve taught courses on the topic. I founded the Advanced Solutions Lab at Google where we helped data scientists working for Google Cloud customers (who already knew ML) become ML engineers capable of building reliable ML models. The first two are the books I’d recommend today to newcomers and the last three to folks attending the ASL. 

Valliappa's book list on to become a machine learning engineer

Valliappa Lakshmanan Why did Valliappa love this book?

There are three types of machine learning books — books written for people who want to become machine learning engineers, books written for people who want to become machine learning researchers, and books written for business executives. Reading a book written for researchers or executives can be a frustrating experience if you are a software engineer, social scientist, or mechanical engineer who wants to learn machine learning and get an ML job in the industry.

If you are a coder who wants to become an ML engineer, you have got to learn machine learning concepts, but you want to learn them in a practical way. You need a book that leads with intuition and shows you implementations with code. It has to do this without getting sidetracked into ML theory, getting mired in statistical concepts, or being so superficial that you don’t understand why the code works.…

By Géron Aurélien,

Why should I read it?

1 author picked Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow as one of their favorite books, and they share why you should read it.

What is this book about?

Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.

By using concrete examples, minimal theory, and two production-ready Python frameworks-Scikit-Learn and TensorFlow-author Aurelien Geron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple linear regression and progressing to deep neural networks. With exercises in each chapter to help…


Book cover of Practical Vim: Edit Text at the Speed of Thought (Pragmatic Programmers)

Jaime Buelta Author Of Python Automation Cookbook

From my list on for Python and non-Python developers.

Why am I passionate about this?

Since I was a kid, I’ve been passionate about technology and had a clear vocation to work with computers. I’ve been a developer for more than 20 years now, spending half of them mainly in the Python environment, and I’ve always been interested in improving my skills. While it’s true that software development is a field that changes constantly and technology evolves at great speed, there are some elements that remain relatively unchanged and can be used to compound knowledge and ability. In particular, the elements that are closer to the human element, teamwork, coordination, etc. are quite stable over time.

Jaime's book list on for Python and non-Python developers

Jaime Buelta Why did Jaime love this book?

A very personal recommendation, as it is about Vim, a very particular text editor that can be difficult to learn at first, but this is the best technical book that I’ve ever read. I use Vim as my main editor and this book makes an astonishing job in clearly explaining why it works the way it works. This book gets you into the proper mindset to use Vim, making it click internally and from there on, to feel way more natural and powerful. Even if you don’t want to use Vim as your main editor, it’s ubiquitous and it’s available by default on a huge amount of computers, making being comfortable with its usage a really powerful tool in a lot of situations. 

By Drew Neil,

Why should I read it?

1 author picked Practical Vim as one of their favorite books, and they share why you should read it.

What is this book about?

Vim is a fast and efficient text editor that will make you a faster and more efficient developer. It's available on almost every OS--if you master the techniques in this book, you'll never need another text editor. Practical Vim shows you 120 vim recipes so you can quickly learn the editor's core functionality and tackle your trickiest editing and writing tasks. Vim, like its classic ancestor vi, is a serious tool for programmers, web developers, and sysadmins. No other text editor comes close to Vim for speed and efficiency; it runs on almost every system imaginable and supports most coding…


Book cover of Hello World! A Complete Python-Based Computer Programming Tutorial with Fun Illustrations, Examples, and Hand-On Exercises.

Daniel Zingaro Author Of Learn to Code by Solving Problems: A Python Programming Primer

From my list on for a rock solid python programming foundation.

Why am I passionate about this?

Some programmers learn through online articles, videos, and blog posts. Not me. I need a throughline—a consistent, expert distillation of the material to take me from where I am to where I want to be. I am not good at patching together information from disparate sources. I need a great book. I have a PhD in computer science education, and I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for a rock solid python programming foundation

Daniel Zingaro Why did Daniel love this book?

I’m a kid at heart. (My favourite book genre is middle grade fiction.) Don’t be put off by a book with "kids" in the subtitle. And what an ebullient book this is! I unapologetically laugh at this book’s humour. I like the short chapters with measurable progress in each one; I like the easy GUI programming to get us started; I like the computational study of probability and randomness. I could quibble over the order that some topics are introduced, and some of the forward references… but, you know what? I won’t. This author duo gets it. Bonus feature: that sneaky way of introducing mutability in Chapter 2. Bonus feature #2: SkiFree.

By Warren Sande, Carter Sande,

Why should I read it?

1 author picked Hello World! A Complete Python-Based Computer Programming Tutorial with Fun Illustrations, Examples, and Hand-On Exercises. as one of their favorite books, and they share why you should read it.

What is this book about?

Hello World! Third Edition is a fun, easy-to-use guide with copious illustrations and engaging examples. It takes the reader on a playful tour of basic programming concepts and then puts those concepts together to make fun and useful programs. It uses Python, a programming language that is one of the easiest to read, write, and understand. Like the previous two editions, Hello World! Third Edition is not just for kids. While the tone is light and engaging, it doesn't "talk down" to the reader, and beginners of any age will love its readability and sense of humor. Written by Warren…