Books and tutorials related to Python and popular third-party libraries and frameworks.


The best books for learning Python or Python Frameworks.

The Hitchhiker's Guide to Python

A best practice handbook for both novice and expert Python developers to the installation, configuration, and usage of Python on a daily basis.

A Byte of Python

A free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you.

Automate the Boring Stuff with Python

One of the best books out there for Python beginners. This book will teach you the basics of Python, while also teaching invaluable automation tools and techniques for solving common problems. You'll learn how to go about scraping the web, manipulating files and automating keyboard and mouse input. Ideal for an office worker who wants to make himself more useful.

Effective Python

A book that gives 90 best practices for writing excellent Python. Great for intermediates.

Python Tricks

Full of useful Python tips, tricks and features. Get this if you have a good grasp of the basics and want to take your Python skills to the next level, or are a experienced programmer looking to add to your toolbelt.

Mission Python

Learn programming and Python while building a complete and awesome space-themed game using cutting-edge Python 3.6 and Pygame Zero. Extensive use of code examples, images, and walk-throughs make this a pleasure to both read and follow along. Excellent book for beginners.

Flask Web Development

A comprehensive Flask walkthrough that has you building a complete social blogging application from scratch.

Fluent Python

A veritable tome of intermediate and advanced Python information. A must-read for any Python professional. By far the most recommended book for intermediates.

Python Cookbook

A book full of very smart problem-solving recipes for various Python topics, including moving from Python 2 to Python 3.

Two Scoops of Django

Tips, tricks, and best practices for your Django project. A highly recommended resource for Django web developers.

Think Python

Think Python is an introduction to Python programming for beginners. It starts with basic concepts of programming, and is carefully designed to define all terms when they are first used and to develop each new concept in a logical progression. Larger pieces, like recursion and object-oriented programming are divided into a sequence of smaller steps and introduced over the course of several chapters.

Neural Networks from Scratch in Python

"Neural Networks From Scratch" is a book intended to teach you how to build neural networks on your own, without any libraries, so you can better understand deep learning and how all of the elements work. This is so you can go out and do new/novel things with deep learning as well as to become more successful with even more basic models. This book is to accompany the usual free tutorial videos and sample code from

Python Crash Course

This fast-paced, thorough introduction to programming with Python will have you writing programs, solving problems, and making things that work in no time. In the first half of the book, you’ll learn basic programming concepts, such as variables, lists, classes, and loops, and practice writing clean code with exercises for each topic. You’ll also learn how to make your programs interactive and test your code safely before adding it to a project. In the second half, you’ll put your new knowledge into practice with three substantial projects: a Space Invaders–inspired arcade game, a set of data visualizations with Python’s handy libraries, and a simple web app you can deploy online.

Inferential Thinking

Inferential Thinking is the textbook for the Foundations of Data Science course at UC Berkley. It introduces you the fundamentals of both Data Science and Python at a level accessible to all. It is available both through your browser and in PDF form.


Tutorials and references for those that are just getting started with Python.

Getting Started with Python for Programmers

A list of beginner resources for programmers coming from other languages, from Python's official guide.

Getting Started with Python for Non-Programmers

A list of beginner resources for programmers with no prior developer experience, from Python's official guide.

Python Developer's Guide

This guide is a comprehensive resource for contributing to Python – for both new and experienced contributors. It is maintained by the same community that maintains Python.

Getting Started with Kivy

A big list of excellent resources for getting started making Kivy applications.

A Simple Guide to Git

A simple, no-nonsense guide to the basics of using Git.

The Flask Mega-Tutorial

Miguel Grinberg's fully featured mega-tutorial for learning how to create web applications with the Flask framework.

Python Cheat Sheet

A Python 3 cheat sheet with useful information and tips, as well as common pitfalls for beginners. This is a PDF.

WTF Python

Python, being a beautifully designed high-level and interpreter-based programming language, provides us with many features for the programmer's comfort. But sometimes, the outcomes of a Python snippet may not seem obvious at first sight. Here's a fun project attempting to explain what exactly is happening under the hood for some counter-intuitive snippets and lesser-known features in Python.