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.
By Nilo Ney Coutinho Menezes
- Logikraft/Novatec
- ISBN: 978-85-7522-949-1 (Paperback), 978-85-7522-950-7 (Hardcover), 978-85-7522-951-4 (E-book)
- Publication May/June, 2025
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
- Manning Publications Co
- ISBN 9781633436336 580 pages
- Publication Feb, 2025
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:
- Python syntax, data structures, and best practices
- Python as an object oriented language
- Common Python libraries
- Basic data handling with Python
- Using AI code generation tools with Python
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:
- Coverage of the core Python programming constructs including functions, conditions, loops, data structures, and file IO.
- Short and modularized lessons that present the material in manageable chunks.
- Interactivity in the form of embedded questions, which provide immediate feedback.
- High-quality images, diagrams, and animations to help learners grasp concepts more quickly.
- 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.
- Complexity Problem
- The 80/20 Principle
- Build a Minimal Viable Product
- Write Clean and Simple Code
- Premature Optimization is the Root of All Evil
- Flow
- Do One Thing Well (Unix)
- 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:
- Create and run your first Dash apps
- Use the pandas library to manipulate and analyze social media data
- Use Git to download and build on existing apps written by the pros
- Visualize machine learning models in your apps
- Create and manipulate statistical and scientific charts and maps using Plotly
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
Learn to Code by Solving Problems: A Python Programming Primer
Daniel Zingaro
Book Overview:
Learn to code, right now. No coding experience required.
Don't try to memorize Python syntax with the hope of using it one day. Learn Python for good while you solve programming problems.
You get line by line walkthroughs, “check your understanding” questions, practice examples with answers, instant and accurate feedback using convenient online websites, discussion of common errors, and more.
This isn’t just a Python book. You’ll definitely learn Python here. But you’ll also learn how to think and solve problems like programmers do. And you’ll learn why slow code is slow and how to write better, faster code. You’re building skills that will not only turn you into a Python programmer but will also help you with whatever programming language you might use in the future.
Leaving the Rat Race with Python: An Insider's Guide to Freelance Developing
Amazon Smile Link ;)
L. Rieger, C. Mayer
ASIN: B08G1XLDNB Finxter 233 Pages
Book Overview:
Leaving the Rat Race with Python shows you how to nurture, grow, and harness your work-from-home coding business online --- and live the good life!
As an insider's guide to freelance developing, Leaving the Rat Race helps you nurture, grow, and harness your new online coding business plant---even if you've got little or no experience as a programmer and business owner.
By following the instructions in this book, you'll create new joy, happiness, and a sense of independence and self-reliance. Because life's too short to work a company you don't believe in!
Kindle Amazon eBook PDF Book + Resources Python Freelancing
https://www.amazon.com/dp/1094777978
Abhishek Singh, Zohaib Hasan
ISBN-13: 978-1094777979 73 Pages (April 20, 2019)
Book Overview:
Awarded as one of the best books of regular expression in 2020 and 2021 by bookauthority.org. Regular Expression is one topic which is nightmare for many seasoned programmers also. And what better choice than Python could have been? An easy to understand language to explain an uneasy to understand topic. This book is designed for absolute beginners with elementary knowledge of Python language. Regular Expressions are considered as a tough topic and usually they are not covered in syllabus in much detail. Mostly, a chapter is given on this topic in syllabus or curriculum books. But here, a complete book is dedicated. This book covers Regular Expression in detail with plenty of examples covering password validation, email ID validation, string manipulations etc. and their step by step analysis. The examples are presented in such a way that one can feel like coding only by reading the codes itself. The book is written in a way to give stress free environment.
Learning Regular Expression Page
Nat Dunn, Webucator
ISBN-13: 978-1951959029 536 Pages (March 15, 2020)
Book Overview:
Learning to program is hard. Don’t let anyone tell you different. If you bought or are considering buying this book because someone told you that you should learn Python, then maybe you should reconsider. The big question to ask yourself is “Do you want to learn Python?” Certainly, this book will help you answer that question, but be prepared to struggle, and to make mistakes, and to get frustrated, and to bang your head against the keyboard. This is Pandora’s box, baby, but…
If you get excited by solving hard problems… if you’re into Sudoku, or crosswords, or jigsaw puzzles, or if you’ll spend hours trying to figure out how to separate two metal looping thingamajigs that you found on someone’s shelf…, or you like tinkering with engines, or figuring out the best recipe for chocolate chip cookies… in other words, if you like a challenge, then you might love Python programming.It’s not easy, but it’s easy enough to get started. Pick up a book (good start!), and start going through it. Be patient with yourself. Pretend you’re the teacher as well as the student. When the student fails, the good teacher doesn’t insult or chastise. The good teacher encourages. The good teacher knows that failure is a part of learning, and that overcoming failure is exciting and leads to more learning. So, be a good teacher and treat yourself well.
But be a good student too. When reading this book, you should be sitting at your computer. When you first begin, plan to spend at least two uninterrupted hours. You should do your best to get through the first two lessons in the first sitting. That will get you through the foundational learning. From there on out, you’ll be hopping back and forth between the book and viewing, editing, and writing code. Go through the book slowly and methodically. Read every demo carefully. Work through every exercise. You cannot learn to code through reading alone. You must practice.
This book assume no prior knowledge of Python, but it introduces some pretty advanced topics, such as working with databases, scraping the web, and object-oriented Python.
Learning IoT with Python and Raspberry Pi
E.I. Horvath E.A. Horvath
ISBN-13:9780578549361 760 Pages (September 1, 2019)
Book Overview:
The very nature of IoT requires a knowledge of a programming language and electronic circuits and a knowledge of networking in order to interface with the physical world and networking platforms. Learning IoT with Python and Raspberry Pi uses a cross-disciplinary approach when teaching IoT. Circuits which use light dependent resistors, LEDs, buzzers, passive infrared sensors, ultrasonic sensors, and other components will be used to explore and elucidate programming concepts. Users can monitor devices connected to the Raspberry Pi. Learning IoT with Python and Raspberry Pi allows the programmer to explore the Internet of Things (IoT) by writing code which will monitor temperature, pressure, humidity, and light levels and will determine when motion is detected, etc. Based upon these physical events, a text message is sent, an email is sent, a phone call is made, or a picture is taken.
- 300+ code listings illustrate Python programming concepts.
- Complete code listings in this textbook for all projects.
- 250+ homework problems ranging from short Python scripts to web site configuration projects.
- Labs on measuring voltage, current, and resistance using a multimeter.
- Introduction to basic Linux commands.
- Use the Sense HAT to read environmental data, such as temperature, pressure, and humidity.
- Send a text message if the light level detected by an LDR circuit falls below a threshold.
- Send an email if motion is detected using a PIR sensor circuit.
- Use an ultrasonic sensor in a proximity alert circuit and make a phone call if an intruder gets too close.
- Use a GPS HAT to get waypoints and store them in a file.
- Use an analog to digital converter to read in data from sensors.
- Control a servo using classes.
- Take a picture with the Raspberry Pi Camera.
- Install and configure an HTTP server with multiple virtual web sites.
- Install and configure an FTP server.
- Use SSH and VNC to remotely control the Raspberry Pi.
- Create a virtual machine in the cloud.
- Upload data to the cloud.
- Learn how to write multi-threaded applications.
- Play an audio file.
- Control a robot using a multi-threaded application.
The Python Coding Book: Understanding what programming really is
Stephen Gruppetta
Freely available online book
Book Overview:
The key to mastering programming is to truly understand why we do things in the way we do them. Learning the methods is not enough. My focus in the years I’ve spent teaching coding has been to get my students to think in the way the computer does. Only then can we speak its language. We need to understand the various tools in a coding language as if they’re our best friends, not just mere acquaintances. The focus of this book is real understanding. ‘Why’ is just as important a question as ‘How’. And I like analogies—a lot. So your journey through learning how to code will take you through The White Room and coffee machines, and you’ll even climb a tree! This book will start from the basics, and in its second part will start to move towards areas of programming relevant to fields such as science, finance, and other data-driven fields. The Table of contents of the book is the following:
- 0 | How To Learn To Code: Preface
- 1 | Getting Started: Your First Project
- 2 | Loops, Lists and More Fundamentals
- 3 | Power-up Your Coding: Create Your Own Functions
- 4 | Data, Data Types, and Data Structures
- 5 | Dealing With Errors and Bugs
- ~ | The White Room: Understanding Programming
- 6 | Functions Revisited
- 7 | Object-Oriented Programming
- 8 | Numerical Python for Quantitative Applications Using numpy
- 9 | Dealing with Dates and Times in Python
- 10 | Basics of Data Visualisation Using matplotlib
- 11 | Functional Programming and Lambda Functions
- 12 | Analysing Data Using pandas
The Python Coding Book: Understanding what programming really is
Christian Mayer
ASIN: B07ZY7XMX8 NoStarch 256 Pages (May 2020)
Book Overview:
Python programmers will improve their computer science skills with these useful one-liners
Python One-Liners will show readers how to perform useful tasks with one line of Python code. Following a brief Python refresher, the book covers essential advanced topics like slicing, list comprehension, broadcasting, lambda functions, algorithms, regular expressions, neural networks, logistic regression and more. Each of the 50 book sections introduces a problem to solve, walks the reader through the skills necessary to solve that problem, then provides a concise one-liner Python solution with a detailed explanation.
Book page (free material) Publisher's page
Learn Programming in Python with Cody Jackson
Cody Jackson
ISBN 13: 9781789531947 Packt 304 Pages (November 2018)
Book Overview:
Kick-start your development journey with this end-to-end guide that covers Python programming fundamentals along with application development
Python is a cross-platform language used by organizations such as Google and NASA. It lets you work quickly and efficiently, allowing you to concentrate on your work rather than the language. Based on his personal experiences when learning to program, Learn Programming in Python with Cody Jackson provides a hands-on introduction to computer programming utilizing one of the most readable programming languages–Python. It aims to educate readers regarding software development as well as help experienced developers become familiar with the Python language, utilizing real-world lessons to help readers understand programming concepts quickly and easily.
The book starts with the basics of programming, and describes Python syntax while developing the skills to make complete programs. In the first part of the book, readers will be going through all the concepts with short and easy-to-understand code samples that will prepare them for the comprehensive application built in parts 2 and 3. The second part of the book will explore topics such as application requirements, building the application, testing, and documentation. It is here that you will get a solid understanding of building an end-to-end application in Python. The next part will show you how to complete your applications by converting text-based simulation into an interactive, graphical user interface, using a desktop GUI framework. After reading the book, you will be confident in developing a complete application in Python, from program design to documentation to deployment.
Python 3 Object-Oriented Programming - Third Edition
Dusty Phillips
ISBN 13: 9781789615852 Packt 466 Pages (October 2018)
Book Overview:
Uncover modern Python with this guide to Python data structures, design patterns, and effective object-oriented techniques
Starting with a detailed analysis of object-oriented programming, you will use the Python programming language to clearly grasp key concepts from the object-oriented paradigm. You will learn how to create maintainable applications by studying higher level design patterns. The book will show you the complexities of string and file manipulation, and how Python distinguishes between binary and textual data. Not one, but two very powerful automated testing systems, unittest and pytest, will be introduced in this book. You'll get a comprehensive introduction to Python's concurrent programming ecosystem.
By the end of the book, you will have thoroughly learned object-oriented principles using Python syntax and be able to create robust and reliable programs confidently.
'Start Here: Python Programming for Beginners "Start Here: Python Programming for beginners" by Jody S. Ginther was written after the changes made in Python 3. It is aimed at total beginners and uses hands-on practice and humor to make learning to program more relaxing and enjoyable.
