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 Two Scoops of Django: Best Practices for the Django Web Framework 1st Edition

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?

Two Scoops is the bible of Django development. It has the most detailed coverage of the Django web framework including best practices and tips. The book has a delightful ice cream-based theme including delightful illustrations. There are several editions of this book so make sure you have the latest one. Overall a valuable reference. However, this book might be daunting for an absolute beginner.

By Daniel Roy Greenfeld, Audrey Roy Greenfeld,

Why should I read it?

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

What is this book about?

Two Scoops of Django 1.11 Will Help You Build Django Projects.

In this book we introduce you to the various tips, tricks, patterns, code snippets, and techniques that we've picked up over the years. We have put thousands of hours into the fourth edition of the book, writing and revising its material to include significant improvements and new material based on feedback from previous editions.

Table of Contents

Chapter 1: Coding Style
Chapter 2: The Optimal Django Environment Setup
Chapter 3: How To Lay Out Django Projects
Chapter 4: Fundamentals of Django App Design
Chapter 5: Settings and Requirements Files…


Book cover of Introduction to Machine Learning with Python: A Guide for Data Scientists

Yuxi (Hayden) Liu Author Of Python Machine Learning By Example: Build intelligent systems using Python, TensorFlow 2, PyTorch, and scikit-learn

From my list on machine learning for beginners.

Why am I passionate about this?

I have been a machine learning engineer applying my ML expertise in computational advertising, and search domain. I am an author of 8 machine learning books. My first book was ranked the #1 bestseller in its category on Amazon in 2017 and 2018 and was translated into many languages. I am also a ML education enthusiast and used to teach ML courses in Toronto, Canada.  

Yuxi's book list on machine learning for beginners

Yuxi (Hayden) Liu Why did Yuxi love this book?

This book is more advanced than the first book I recommended. It presents ML theoretical and practical aspects step-by-step from the bottom up. Each chapter elaborates at length on a core building block in the ML life cycle. For example, feature engineering, supervised learning, and model evaluation have their own separate chapters, with intuitive discussions of how they work. Most of the concept is taught through the simple yet powerful Python Module Scikit-Learn so it won’t overburden you with heavy programming. This book will be perfect for practitioners with some understanding of statistics and linear algebra.

By Andreas C. Müller, Sarah Guido,

Why should I read it?

1 author picked Introduction to Machine Learning with Python as one of their favorite books, and they share why you should read it.

What is this book about?

Machine learning has become an integral part of many commercial applications and research projects, but this field is not exclusive to large companies with extensive research teams. If you use Python, even as a beginner, this book will teach you practical ways to build your own machine learning solutions. With all the data available today, machine learning applications are limited only by your imagination. You'll learn the steps necessary to create a successful machine-learning application with Python and the scikit-learn library. Authors Andreas Muller and Sarah Guido focus on the practical aspects of using machine learning algorithms, rather than the…


Book cover of Foundations of Deep Reinforcement Learning: Theory and Practice in Python

Simon J.D. Prince Author Of Understanding Deep Learning

From my list on machine learning and deep neural networks.

Why am I passionate about this?

I started my career in neuroscience. I wanted to understand brains. That is still proving difficult, and somewhere along the way, I realized my real motivation was to build things, and I wound up working in AI. I love the elegance of mathematical models of the world. Even the simplest machine learning model has complex implications, and exploring them is a joy.

Simon's book list on machine learning and deep neural networks

Simon J.D. Prince Why did Simon love this book?

Of course, this is not the obvious book to recommend for reinforcement learning, but if you are a beginner, then it’s a quick and easy place to start. It’s compact and gets straight into the main algorithms.

It has a good balance between theory and code and will get you up and running quickly.

By Laura Graesser, Wah Loon Keng,

Why should I read it?

1 author picked Foundations of Deep Reinforcement Learning as one of their favorite books, and they share why you should read it.

What is this book about?

The Contemporary Introduction to Deep Reinforcement Learning that Combines Theory and Practice

Deep reinforcement learning (deep RL) combines deep learning and reinforcement learning, in which artificial agents learn to solve sequential decision-making problems. In the past decade deep RL has achieved remarkable results on a range of problems, from single and multiplayer games-such as Go, Atari games, and DotA 2-to robotics.

Foundations of Deep Reinforcement Learning is an introduction to deep RL that uniquely combines both theory and implementation. It starts with intuition, then carefully explains the theory of deep RL algorithms, discusses implementations in its companion software library SLM…


Book cover of Mission Python: Code a Space Adventure Game!

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 how to program in Python and make a video game at the same time. Hmm – sounds like learning your native language while writing a novel. That could be messy. Could be – but not with this book. McManus knows video games. McManus knows how to teach. I love the idea of teaching a programming language through one extended context. If, like me, you’re fascinated by retro video games, get this book and let that fascination propel you through your beginning programming journey. Bonus feature: commitment to the bit; everything is in space!

By Sean McManus,

Why should I read it?

1 author picked Mission Python as one of their favorite books, and they share why you should read it. This book is for kids age 10, 11, 12, and 13.

What is this book about?

Launch into coding with Mission: Python, a space-themed guide to building a complete computer game in Python. As you work through the book, you'll build exercises and mini-projects, like making a spacewalk simulator and creating an astronaut's safety checklist that will put your new Python skills to the test. Before you know it, you'll have a working, awesome game to stump your friends with (and some nifty coding skills, too!). You can follow this book using a Raspberry Pi or a Microsoft Windows PC, and the 3D graphics and sound effects you need are provided as a download.


Book cover of Designing Secure Software: A Guide for Developers

Adam Shostack Author Of Threat Modeling: Designing for Security

From my list on application security for builders.

Why am I passionate about this?

Being able to understand and change reality through our knowledge and skill is literal magic. We’re building systems with so many exciting and unexpected properties that can be exploited and repurposed for both good and evil. I want to keep some of that magic and help people engineer – build great systems that make people’s lives better. I’ve been securing (and breaking) systems, from operating rooms to spaceships, from banks to self-driving cars for over 25 years. The biggest lesson I’ve learned is that if security is not infused from the start, we’re forced to rely on what ought to be our last lines of defense. This list helps you infuse security into your systems.

Adam's book list on application security for builders

Adam Shostack Why did Adam love this book?

Loren’s been contributing to security for over 40 years, and this book captures his hard-won wisdom in a way that’s both humble and accessible. It scales from principles and design approaches to in-depth explanations of exactly how things go wrong and how to avoid those problems. (Also, I was honored to write the foreword.)

By Loren Kohnfelder,

Why should I read it?

1 author picked Designing Secure Software as one of their favorite books, and they share why you should read it.

What is this book about?

Designing Secure Software consolidates Loren Kohnfelder's more than twenty years of experience into a concise, elegant guide to improving the security of technology products. Written for a wide range of software professionals, it emphasizes building security into software design early and involving the entire team in the process. The book begins with a discussion of core concepts. The second part, perhaps this book's most important contribution, covers the process of designing and reviewing a software design with security considerations in mind. The final section details the most common coding flaws that create vulnerabilities, making copious use of code snippets written…


Book cover of Get Programming: Learn to Code with Python

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?

Bell is an expert teacher. I like the order of topics; the breakdown of topics into units; the short, targeted lessons in each unit; the varied capstone projects to tie things together; the explicit learning goals; the structured approach to solving problems. The first bit of code that you’ll write is on page 30. Your first complete program is on page 60. What’s up with those first 59 pages, then? Motivation, comparisons to daily life, setup, and building blocks. Things that other authors tend to skip but that may be important for some learners. Bonus feature: “I try not to forget what it’s like to start learning to program from scratch, no matter how many times I teach the course.”

By Ana Bell,

Why should I read it?

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

What is this book about?

Whether readers want to become a professional software developer,
create web sites, analyze scientific data, or just automate tedious
business tasks, learning to program is the first step. Fortunately,
learning to program doesn't have to be difficult.


Get Programming: Learn to code with Python introduces you to the
world of writing computer programs without drowning you in
confusing jargon or theory that make getting started harder than it
should be. By working through the examples and exercises in 39 bitesize
lessons, you'll learn how to code step-by-step by creating your
own programs with the beginner-friendly Python language! With
crystal-clear illustrations,…


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

Tomasz Lelek Author Of Software Mistakes and Tradeoffs: How to make good programming decisions

From my list on big data processing ecosystem.

Why am I passionate about this?

I am motivated by working on products that many people use. I've been a part of companies that deliver products impacting millions of people. To achieve it, I am working in the Big Data ecosystem and striving to simplify it by contributing to Dremio's Data LakeHouse solution. I worked on projects using Spark, HDFS, Cassandra, and Kafka technologies. I have been working in the software engineering industry for ten years now, and I've tried to share my experience and lessons learned in the Software Mistakes and Tradeoffs book, hoping that it will allow current and the next generation of engineers to create better software, leading to more happy users.

Tomasz's book list on big data processing ecosystem

Tomasz Lelek Why did Tomasz love this book?

The Hands-on Machine Learning book presents an end-to-end approach to many problems that can be solved with machine learning.

Every concept and topic is backed up with a running code that you can experiment with and adapt to your real-world problems.

Thanks to this book, you will be able to understand the state of the art of today's machine learning and feel comfortable using the most up-to-date ML methods.

By Géron Aurélien,

Why should I read it?

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

What is this book about?

Through a recent series of 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 best-selling book uses concrete examples, minimal theory, and production-ready Python frameworks--scikit-learn, Keras, and TensorFlow--to help you gain an intuitive understanding of the concepts and tools for building intelligent systems.

With this updated third edition, author Aurelien Geron explores a range of techniques, starting with simple linear regression and progressing to deep neural networks. Numerous code examples and exercises throughout…


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…


Book cover of High Performance Django

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?

Building scalable and performant web applications is both an art and a science. This book focused on such techniques and hence goes beyond what most books on Django try to cover. Anyone running a Django site under heavy load will definitely learn a few tips from this book. However, it is light on explanations and expects you to figure out many things from reading the examples.

By Peter Baumgartner, Yann Malet,

Why should I read it?

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