The books on this page are all general introductions to the Python language. Most of these books will contain a few chapters on particular applications such as GUI interfaces or Web programming, but won't go into great detail on any one topic; refer to the PythonBooks page for lists of application-specific books. Experienced programmers who prefer a brief and condensed introduction should look at the list of ReferenceBooks.


Python from Scratch

By Nilo Ney Coutinho Menezes

Book Overview

This book is designed specifically with programming beginners in mind. Basic programming concepts — such as expressions, variables, loops, decisions, lists, dictionaries, sets, functions, files, classes, objects, SQLite 3 databases, regular expressions and graphical interfaces with Tkinter — are clearly presented one by one with examples and exercises to illustrate. The book aims to explore computer programming as an everyday tool. It can be read during an introduction to computer programming course or used as a study guide for self-learners. Only basic computer knowledge, such as typing texts, opening and saving files, is needed to start the course. All software used in the book can be downloaded for free and runs on Windows, Linux, and macOS.

Although Python (version +3.13) is a very powerful language full of modern programming features, this book focuses primarily on programming logic and teaching how to program. Some language features were not used in order to favor programming logic exercises and offer the reader broader preparation for other languages. Powerful language features such as generators, sets, lambda functions and comprehensions are presented, and the reader will find various notes and explanations of Python-specific features in addition to programming logic.

Who this book is written for:

Students who want to learn programming on their own, the book was written so you can gradually learn to program. The first chapters explain the basic programming concepts in a logical order, with practical exercises. All you need to know is how to use a computer and a browser (Firefox, Edge, Safari, or Google Chrome). The book starts by showing how to download and install Python on Windows, but it also covers Linux (Ubuntu) and macOS. Special attention was given to conditional structures (if), loops (while), and functions (including recursion). The book also covers string manipulation (text processing), so you learn to work with variables containing text and prepare to write more complete programs. At the end, we cover files, creating simple web pages, a light introduction to object-oriented programming, regular expressions, and graphical interfaces.


The Quick Python Book, 4th Edition

By Naomi Ceder

Sample chapters, liveBook, and source code available on the Manning Publications web site: The Quick Python Book, 4th Edition

Book overview:

For over 25 years, The Quick Python Book has been one of the best Python books money can buy. It concisely covers programming basics, while introducing Python's comprehensive standard library and unique features in depth and detail. In this fourth edition, you’ll find new coverage of AI coding tools like Copilot and Google's Colaboratory (Colab), and develop a mindset that can make the most of AI.

The Quick Python Book, Fourth Edition includes:

Whether you’re new to Python or looking to advance your basic skills, The Quick Python Book, Fourth Edition will get you writing effective Python code fast. Python authority and former Chair of the Python Software Foundation Board or Directors Naomi Ceder has returned to author this extensively revised fourth edition. With the personal touch of a skilled teacher, Naomi beautifully balances details of the language with the insights and advice you need to handle any task.

Who this book is written for:

This book is for someone who knows how to program, who whats to learn Python quickly and efficiently.


Python knowledge building step by step from the basics to the first desktop application

Dr. Csaba Dobreff

Released 2025

1819 Pages

Book Overview

The aim of this book is to take the reader from the basic knowledge of computing essentials for programming in Python to a level of proficiency that will enable you to write a full-fledged desktop application with a graphical user interface.

In a single book, the reader will get essentially the material of three books in a consistent structure: an introduction to the basic concepts and language building blocks, the application of the commonly used standard library modules, and the development of graphical user interfaces.

The book starts from scratch, and the subsequent chapters build on each other. Therefore, it can be used as a textbook for beginners who want to learn computer programming and Python. Hence, it can be useful for high school, university, and course students or hobby programmers.

This book is particularly recommended for those who wish to attend a Python course but for some reason (caring for a small child, limited mobility, distance, time constraints, etc.) cannot. The book can help in this situation because its content covers the knowledge that is provided in courses from beginner to advanced level, but it can be studied at the reader's own pace.

As the presented body of knowledge is gradually deepening and leads to more and more subtle details of the language, this book is also recommended for teachers, engineers, software developers, data analysts, and data scientists.


PyFlo - A Free, Interactive Guide to Python Programming

Benjamin Dicken

Website released in 2023

Book Overview

Pyflo is a free, interactive guide to Python programming. It contains over 70 lessons that provide a high-quality foundation in computer programming. Key Features include:

  1. Coverage of the core Python programming constructs including functions, conditions, loops, data structures, and file IO.
  2. Short and modularized lessons that present the material in manageable chunks.
  3. Interactivity in the form of embedded questions, which provide immediate feedback.
  4. High-quality images, diagrams, and animations to help learners grasp concepts more quickly.
  5. Guided projects to give learners the opportunity to apply what has been learned.

This completely free tool will help jump-start your Python programming career.


Essential Python for Machine Learning

Abhishek Singh

ISBN-13: 979-8852254672 572 Pages ((July 14, 2023)

Book Overview

"Essential Python for Machine Learning" is a comprehensive guide that equips readers with the fundamental Python programming skills necessary to kickstart their journey into the exciting world of machine learning. This book covers the essential topics and techniques required to understand and apply Python in the field of machine learning.

Starting with the basics of Python programming, readers learn about conditional statements, loops, data structures, and functions. The book then delves into important libraries like NumPy and Pandas, enabling readers to manipulate and analyze data efficiently. With a focus on practical application, readers explore topics such as file handling, regular expressions, and error handling, gaining essential skills for real-world machine learning projects.

Key Features:

1. Comprehensive coverage of Python programming fundamentals. 2. In-depth exploration of key libraries like NumPy and Pandas for data manipulation and analysis. 3. Practical application of Python concepts to real-world machine learning scenarios. 4. Clear explanations, illustrative examples, and practical exercises to enhance learning. 5. Suitable for beginners and those with some programming experience looking to enter the field of machine learning.

Whether you are a student, aspiring data scientist, or a Python enthusiast looking to venture into machine learning, "Essential Python for Machine Learning" provides the essential knowledge and skills needed to get started. Gain a strong foundation in Python programming and unlock the power of machine learning with this practical and accessible guide.


Master Python Using Version 3.11: Learn Python Like Never Before

Abhishek Singh

ISBN-13: 979-8385523276 385 Pages (First edition, March 2023)

Book Overview:

One of the most popular programming languages used nowadays is called Python. It has just become more potent with the addition of a few additional features in its most recent iteration. Yet, not everyone is aware of its potency. The goal of this book is to introduce readers to Python programming from scratch. You are welcome to learn Python Programming like never before, whether you are a computer science undergraduate or not, a school-going programming geek or a beginner. You'll discover everything there is to know about Python, including how to use it for programming, when to employ the much-touted walrus operator and other brand-new features of version 3.11. Many solved programs that were used as interview questions at various firms are included in the book. Understanding the typical mistakes and how to fix them are covered in a separate chapter. The difficult topics have been simplified and expressed in simple terms. Beginners and intermediate readers should read the book.


Python from the Very Beginning

John Whitington

ISBN-13: 978-0-9576711-5-7 238 Pages (Second edition, May 2023)

Also available as a DRM-free PDF or EPUB.

Book Overview:

In Python from the Very Beginning John Whitington takes a no-prerequisites approach to teaching a modern general-purpose programming language. Each small, self-contained chapter introduces a new topic, building until the reader can write quite substantial programs. There are plenty of questions and, crucially, worked answers and hints.

Python from the Very Beginning will appeal both to new programmers, and to experienced programmers eager to explore a new language. It is suitable both for formal use within an undergraduate or graduate curriculum, and for the interested amateur.

Second edition, fully updated in 2023.

Amazon printed and Kindle PDF and EPUB eBook


The Art of Clean Code: Best Practices to Eliminate Complexity and Simplify Your Life

Christian Mayer

Book Overview:

Most software developers waste thousands of hours working with overly complex code.

The eight core principles in The Art of Clean Code will teach you how to write clear, maintainable code without compromising functionality.

  1. Complexity Problem
  2. The 80/20 Principle
  3. Build a Minimal Viable Product
  4. Write Clean and Simple Code
  5. Premature Optimization is the Root of All Evil
  6. Flow
  7. Do One Thing Well (Unix)
  8. Less is More in Design

The book’s guiding principle is simplicity: reduce and simplify, then reinvest energy in the important parts to save you countless hours and ease the often onerous task of code maintenance.

Amazon: The Art of Clean Code


Python Dash: Build Data Analysis and Visualization Apps with Plotly

Adam Schroeder, Christian Mayer, and Ann Marie Ward

Book Overview:

Create stunning interactive dashboard applications in Python with the Dash visualization and data analysis tool. Build interfaces that make sense of your data, and make it pretty.

A swift and practical introduction to building interactive data visualization apps in Python, known as dashboards. You’ve seen dashboards before; think election result visualizations you can update in real time, or population maps you can filter by demographic. With the Python Dash library you’ll create analytic dashboards that present data in effective, usable, elegant ways in just a few lines of code.

The book is fast-paced and caters to those entirely new to dashboards. It will talk you through the necessary software, then get straight into building the dashboards themselves. You’ll learn the basic format of a Dash app by building a Twitter analysis dashboard that maps the number of likes certain accounts gained over time. You’ll build up skills through three more sophisticated projects. The first is a global analysis app that compares country data in three areas: the percentage of a population using the internet, percentage of parliament seats held by women, and CO2 emissions. You’ll then build an investment portfolio dashboard, and an app that allows you to visualize and explore machine learning algorithms.

In this book you will:

Dash combines several technologies to get you building dashboards quickly and efficiently. This book will do the same.

Amazon: Python Dash: Build Data Analysis and Visualization Apps with Plotly