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.


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


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


Actionable Python 3.8

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 Page



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.

Learning IoT Page


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:

The Python Coding Book: Understanding what programming really is


Python One-Liners

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.

Publisher's page


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.

Publisher's page


'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.


Software Development I: with Python

ISBN: 978-0-9754759-4-2, LCCN: 2010906917, 605 pages

"Software Development I: with Python"

Tom Baugh

This course introduces the student to Python, cultivating professional software development skills along the way. Yet, this course requires no prior programming knowledge to learn or to teach. Organized as sixty-four lessons, sixteen tests and two exams, for a total of 82 lecture units, this course covers the following topics:

By the end of the course, students will have learned how to write Python projects, including custom classes and modules. The course culminates with an exploration of windowed application development, including a bitmapped graphics project. The course material includes the student text and CD-ROM with instructor's guide for each lesson, tests, exams, solutions guide for exercises, tests and exams, student handouts and completed projects for each lesson. The format of the course is intended to support classroom use, homeschool use, or self-study.


Python Programming in Context

Bradley N. Miller and David L Ranum

Python Programming in Context is a clear, accessible introduction to the fundamental programming and problem solving concepts necessary for students at this level. The authors carefully build upon the many important computer science concepts and problem solving techniques throughout the text and offer relevant, real-world examples and exercises to reinforce key material. Programming skills throughout the text are linked to applied areas such as Image Processing, Cryptography, Astronomy, Music, the Internet, and Bioinformatics, giving students a well rounded look of its capabilities.

dead link

http://www.jbpub.com/catalog/9780763746025/


Python First: The Joy of Success

Atanas Radenski

ISBN: 978159526-713-9, 512 pages, Llumina Press, April 2007

This book is a paper companion to the "Python First" digital pack from studypack.com. The complete digital study pack features e-texts, slides, a wealth of detailed self-guided labs that learners can complete on their own, sample programs, and extensive quizzes. The book offers a printed version of the e-texts and self-guided labs in the same format as they appear in the online digital pack.

Publisher's page


Building Skills in Python

Steven F. Lott

How do you learn Python? By doing a series of exercises, each of which adds a single new feature of the language. This 250+ page book has 31 chapters that will help you build Python programming skills through a series of exercises. This book includes six projects from straight-forward to sophisticated that will help solidify your Python skills.

http://homepage.mac.com/s_lott/books/python.html


Building Skills in Programming How To Write Your Own Software Using Python

Steven F. Lott

How do you learn to solve your own programs by writing programs? By doing a series of exercises, each of which builds up a part of the skill set we call "computer programming". This book has 54 chapters that will help you build basic programming skills through a series of exercises that grow from simple identification of the parts of your computer through to statistical simulations.

http://homepage.mac.com/s_lott/books/nonprogrammer.html


A Byte of Python

A Byte of Python is a book on programming using the Python language. It serves as a tutorial or guide to the Python language for anyone. If all you know is how to save text files, then you can learn Python using this book. If you are an expert programmer who loves C, Perl, Java or C#, you can also learn Python using this book.

This book can be read online or downloaded from http://www.swaroopch.com/notes/Python


Practical Python

1590590066, 619 pages, APress (August 2002)

The first half of this book introduces the Python language, and the second half demonstrates its usage in various practical projects such as "automated document conversion, newsgroup administration, graphical PDF document generation, remote document maintenance, the creation of a peer-to-peer system with XML-RPC, database integration, and GUI and game development." A new edition of this book is available under the title Beginning Python: From Novice to Professional.

Publisher's page


Beginning Python: From Novice to Professional

1-59059-519-x, 640 pages, APress (September 2005)

This is an update of Practical Python.

Publisher's page


Computer Programming is Fun!

208 pages, Handy Software and Publishing (April 2005)

Written by a homeschooling Dad for teenage youth, this introductory computer programming book is for people who have no prior programming experience. Teaches the basic principles of programming using Python, with lots of examples. Small video game project at the end. Good for self-study or classroom use.

http://www.handysoftware.com/cpif/


Python Programming for the Absolute Beginner

1592000738 Premier Press, 456 pages (2003)

Simple intro accessible for beginners. Very hands-on and fun, utilizes development of games to teach each concept. Great for visual and hands-on learners alike.

Publisher's page




The Python Apprentice

Robert Smallshire, Austin Bingham

ISBN 13: 9781788293181 Packt Publishing 352 pages (June 2017)

Book Overview:

Before you master Python, you need to learn the culture and the tools to become a productive member of any Python project. This book will give you a practical and thorough introduction to Python programming, providing you with the insight and technical craftsmanship you need to be a productive member of any Python project. As a Python developer, know the tools, basic idioms and of course the ins and outs of the language, the standard library and other modules to be able to jump into most projects.

What you will learn:

Publisher's page


Learn Python in 7 Days

Mohit, Bhaskar N. Das

ISBN 13: 9781787288386 Packt Publishing 280 pages (May 2017)

Book Overview:

Python is a great language to get started in the world of programming and application development. This book will help you to take your skills to the next level having a good knowledge of the fundamentals of Python.

Begin with the absolute foundation, covering the basic syntax, type variables and operators. Then you can move on to concepts like statements, arrays, operators, string processing and I/O handling. You’ll be able to learn how to operate tuples and understand the functions and methods of lists. Develop a deep understanding of list and tuples and learn python dictionary. As you progress through the book, you’ll learn about function parameters and how to use control statements with the loop. You’ll further learn how to create modules and packages, storing of data as well as handling errors. Later, dive into advanced level concepts such as Python collections and how to use class, methods, objects in Python.

By the end of this book, you will be able to take your skills to the next level having a good knowledge of the fundamentals of Python.

What you will learn:

Publisher's page


What You Need to Know about Machine Learning (Free eBook)

By Gabriel A. Cánepa

ISBN 13: 9781786466211 Packt Publishing (July 2016)

Book Overview:

This book offers you the perfect place to lay the foundation for your work in the world of Machine Learning, providing the basic understanding, knowledge, and skills that you can build on with experience and time.

Publisher's Page


What You Need to Know about Python (Free eBook)

By Pierluigi Riti

ISBN 13: 9781786465566 Packt Publishing (March 2016)

Book Overview:

With this book you’ll experience the basics of Python, what it can be used for, and get a clear direction in what you need to really get the most from this great language.

Publisher's Page


Learn Python

By Ana Bell

Book overview:

When you're ready to learn to program, Python is a great language to start with. It has a straightforward syntax, you'll find it easy to learn, and it's extremely versatile. Once you master the basics, you'll appreciate Python's very strong online community where you can continue learning and tinkering with more advanced programming techniques. All you need is some help to get going. Learning to program with Python doesn't have to be difficult, in fact it can even be fun. This book will get you started!

Learn Python is an introduction to programming using one of the most popular programming languages. The first few chapters give you a quick background to programming concepts and a hands-on guide to setting up your programming environment. You will then be gently introduced to the basics of programming, building up to writing your first programs! This easy-to-follow tutorial is full of exercises to practice and reinforce each new concept, as well as to give you confidence that you are ready to move on to the next lesson. As you progress, you'll learn programming topics and concepts that are ubiquitous across almost all other programming languages. By the end of the book, you'll have a solid grasp of how to write programs as well as programming best practices.

Who this book is written for:

Anyone without programming experience who wants an easy-to-follow book that guides you through short lessons and exercises.

Chapter 4 available for free: Variables and Expressions: Giving Names and Values to Things

Chapter 30 available for free: Making your own Object Types


The Quick Python Book, 3rd Edition

By Naomi Ceder

MEAP: early access to chapters as they are being written, available at the Manning Publications web site: The Quick Python Book, 3rd Edition

Book overview:

This third revision of Manning's popular The Quick Python Book offers a clear, crisp updated introduction to the elegant Python programming language and its famously easy-to-read syntax. Written for programmers new to Python, this latest edition includes new exercises throughout. It covers features common to other languages concisely, while introducing Python's comprehensive standard functions library and unique features in detail.

After exploring Python's syntax, control flow, and basic data structures, the book shows how to create and deploy full applications and larger code libraries. It addresses established Python features as well as the advanced object-oriented options available in Python 3. Along the way, you'll survey the current Python development landscape, including Pythonic best practices, data extraction and cleaning, database access, and web frameworks.

Who this book is written for:

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

Chapter 1 available for free: About Python


Python Machine Learning Cookbook

By Prateek Joshi

ISBN 13: 9781786464477 Packt Publishing 304 pages (June 2016)

Book overview:

Machine learning is becoming increasingly pervasive in the modern data-driven world. It is used extensively across many fields such as search engines, robotics, self-driving cars, and more. With this book, you will learn how to perform various machine learning tasks in different environments. We’ll start by exploring a range of real-life scenarios where machine learning can be used, and look at various building blocks. Throughout the book, you’ll use a wide variety of machine learning algorithms to solve real-world problems and use Python to implement these algorithms. You’ll discover how to deal with various types of data and explore the differences between machine learning paradigms such as supervised and unsupervised learning. We also cover a range of regression techniques, classification algorithms, predictive modeling, data visualization techniques, recommendation engines, and more with the help of real-world examples.

Who this book is written for:

This book is for Python programmers who are looking to use machine-learning algorithms to create real-world applications. This book is friendly to Python beginners, but familiarity with Python programming would certainly be useful to play around with the code.

Publisher's page


Modular Programming with Python

By Erik Westra

ISBN 13: 9781785884481 Packt Publishing 246 pages (May 2016)

Book overview:

This book will help readers develop readable, reliable, and maintainable programs in Python. Starting with an introduction to the concept of modules and packages, this book shows how you can use these building blocks to organize a complex program into logical parts and make sure those parts are working correctly together. Using clearly written, real-world examples, this book demonstrates how you can use modular techniques to build better programs. A number of common modular programming patterns are covered, including divide-and-conquer, abstraction, encapsulation, wrappers and extensibility. You will also learn how to test your modules and packages, how to prepare your code for sharing with other people, and how to publish your modules and packages on GitHub and the Python Package Index so that other people can use them. Finally, you will learn how to use modular design techniques to be a more effective programmer.

Who this book is written for:

This book is intended for beginner to intermediate level Python programmers who wish to learn how to use modules and packages within their programs. While readers must understand the basics of Python programming, no knowledge of modular programming techniques is required.

Publisher's page


The Coder's Apprentice: Learning programming with Python 3

By Pieter Spronck

~400 pages (July 2016)

Book overview:

"The Coder's Apprentice" is a course book, aimed at teaching Python 3 to students and teenagers who are completely new to programming. Contrary to many of the other books that teach Python programming, this book assumes no previous knowledge of programming on the part of the students, and contains numerous exercises that allow students to train their programming skills.

The book covers all imperative programming and object oriented programming aspects of Python 3, including:

The book also spends time on algorithm design and writing effective code.

The book is freely available as PDF.


Learning Python for Forensics

By Preston Miller, Chapin Bryce

ISBN 13: 9781783285235 Packt Publishing 488 pages (May 2016)

Book overview:

This book will illustrate how and why you should learn Python to strengthen your analysis skills and efficiency as you creatively solve real-world problems through instruction-based tutorials. The tutorials use an interactive design, giving you experience of the development process so you gain a better understanding of what it means to be a forensic developer.

Who this book is written for:

If you are a forensics student, hobbyist, or professional that is seeking to increase your understanding in forensics through the use of a programming language, then this book is for you.You are not required to have previous experience in programming to learn and master the content within this book. This material, created by forensic professionals, was written with a unique perspective and understanding of examiners who wish to learn programming.

Publisher's page


Practical Data Analysis Cookbook

By Tomasz Drabas

ISBN 13: 9781783551668 Packt Publishing 384 pages (April 2016)

Book overview:

This book provides a rich set of independent recipes that dive into the world of data analytics and modeling using a variety of approaches, tools, and algorithms. You will learn the basics of data handling and modeling, and will build your skills gradually toward more advanced topics such as simulations, raw text processing, social interactions analysis, and more.

Who this book is written for:

This hands-on recipe guide is divided into three sections that tackle and overcome real-world data modeling problems faced by data analysts/scientist in their everyday work. Each independent recipe is written in an easy-to-follow and step-by-step fashion.

Publisher's page


Python Projects for Kids

Jessica Ingrassellino

ISBN: 9781782175063

192 pages, April 2016, Packt Publishing

Kids are always the most fast-paced and enthusiastic learners, and are naturally willing to build stuff that looks like magic at the end (when it works!). Programming can be one such magic. Being able to write a program that works helps them feel they've really achieved something. Kids today are very tech-savvy and cannot wait to enter the fast-paced digital world.

Because Python is one of the most popular languages and has a syntax that is quite simple to understand, even kids are eager to use it as a stepping stone to learning programming languages.

This book covers projects that are simple and fun, and teach kids how to write Python code that works.

The book will teach the basics of Python programming, installation, and so on and then will move on to projects. A total of three projects, with each and every step explained carefully, without any assumption of previous experience.

What You Will Learn:

This book is for kids (aged 10 and over). This is book is intended for absolute beginners who lack any knowledge of computing or programming languages and want to get started in the world of programming.


Learn to Program with Minecraft

Craig Richardson

ISBN: 978-1-59327-670-6

304 pages, December 2015, No Starch Press

You’ve bested creepers, traveled deep into caves, and maybe even gone to The End and back—but have you ever transformed a sword into a magic wand? Built a palace in the blink of an eye? Designed your own color-changing disco dance floor?

In Learn to Program with Minecraft®, you’ll do all this and more with the power of Python, a free language used by millions of professional and first-time programmers!

Begin with some short, simple Python lessons and then use your new skills to modify Minecraft to produce instant and totally awesome results. Learn how to customize Minecraft to make mini-games, duplicate entire buildings, and turn boring blocks into gold.

You’ll also write programs that:

Whether you’re a Minecraft megafan or a newbie, you’ll see Minecraft in a whole new light while learning the basics of programming. Sure, you could spend all day mining for precious resources or building your mansion by hand, but with the power of Python, those days are over!

Requires: Windows 7 or later; OS X 10.10 or later; or a Raspberry Pi.

Uses Python 3


Automate the Boring Stuff with Python

Al Sweigart

ISBN: 978-1-59327-599-0

504 pages, April 2015, No Starch Press

If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?

In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to:

Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.

Don’t spend your time doing work a well-trained monkey could do. Even if you’ve never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python.

Note: The programs in this book are written to run on Python 3.


Doing Math with Python

Amit Saha

ISBN: 978-1-59327-640-9

264 pages, August 2015, No Starch Press

In Doing Math with Python you'll learn to how to use the Python programming language as a tool to delve into math concepts. Python is easy to learn, and it's perfect for exploring topics like statistics, geometry, probability, and calculus. You’ll learn to write programs to find derivatives, solve equations graphically, manipulate algebraic expressions, even examine projectile motion.

Rather than crank through tedious calculations by hand, you'll learn how to use Python functions and modules to handle the number crunching while you focus on the principles behind the math. Exercises throughout teach fundamental programming concepts, like using functions, handling user input, and reading and manipulating data. As you learn to think computationally, you'll discover new ways to explore and think about math, and gain valuable programming skills that you can use to continue your study of math and computer science.

If you’re interested in math but have yet to dip into programming, you’ll find that Python makes it easy to go deeper into the subject—let Python handle the tedious work while you spend more time on the math.

Suggested for ages 14 and up.


Python Crash Course

Eric Matthes

ISBN: 978-1-59327-603-4

624 pages, November 2015, No Starch Press

Solve Problems, Make Things, and Do Cool Stuff!

Python Crash Course is a fast-paced and thorough introduction to Python that will have you writing programs, solving problems, and making things that work, fast.

In the first half of the book you’ll learn basic programming concepts, from installing Python to testing code, including how to use a text editor, write clean and readable code, store data in lists and dictionaries, create classes that simulate real-life objects, and write loops to perform actions on your data. You’ll also learn how to make your programs interactive and test your code safely before adding it to your project. The exercises in chapters will help cement your learning so you can put that knowledge into practice in the second half, with three substantial projects: a Space-Invaders-inspired arcade game, data visualization with Python’s super-handy libraries, and a simple Web app you can deploy online.

As you work through Python Crash Course you’ll learn how to:

Python Crash Course will teach you just what you need to know to start programming meaningful things quickly.

Uses Python 2 and 3


Python for Kids

Jason Briggs

ISBN: 978-1-59327-407-8

344 pages, December 2012, No Starch Press

The code in this book runs on almost anything: Windows, Mac, Linux, even an OLPC laptop or Raspberry Pi!

Python is a powerful, expressive programming language that’s easy to learn and fun to use! But books about learning to program in Python can be kind of dull, gray, and boring, and that’s no fun for anyone.

Python for Kids brings Python to life and brings you (and your parents) into the world of programming. The ever-patient Jason R. Briggs will guide you through the basics as you experiment with unique (and often hilarious) example programs that feature ravenous monsters, secret agents, thieving ravens, and more. New terms are defined; code is colored, dissected, and explained; and quirky, full-color illustrations keep things on the lighter side.

Chapters end with programming puzzles designed to stretch your brain and strengthen your understanding. By the end of the book you’ll have programmed two complete games: a clone of the famous Pong and “Mr. Stick Man Races for the Exit”—a platform game with jumps, animation, and much more.

As you strike out on your programming adventure, you’ll learn how to:

Why should serious adults have all the fun? Python for Kids is your ticket into the amazing world of computer programming.

For kids ages 10+ (and their parents).

Featuring original artwork by Miran Lipovača!


Teach Your Kids to Code

Bryson Payne

ISBN: 978-1-59327-614-0

336 pages, April 2015, No Starch Press

Teach Your Kids to Code is a parent's and teacher's guide to teaching kids basic programming and problem solving using Python, the powerful language used in college courses and by tech companies like Google and IBM.

Step-by-step explanations will have kids learning computational thinking right away, while visual and game-oriented examples hold their attention. Friendly introductions to fundamental programming concepts such as variables, loops, and functions will help even the youngest programmers build the skills they need to make their own cool games and applications.

Whether you've been coding for years or have never programmed anything at all, Teach Your Kids to Code will help you show your young programmer how to:

Teach Your Kids to Code is the perfect companion to any introductory programming class or after-school meet-up, or simply your educational efforts at home. Spend some fun, productive afternoons at the computer with your kids—you can all learn something!


Python for complete beginners

Dr. Martin Jones

ISBN: 978-1514376980

246 pages, 2015

Getting started with programming can be an intimidating challenge. Most books and tutorials assume lots of previous knowledge, skip over jargon and new concepts, and use examples that only make sense if you already understand programming.

This book is different. It gives you an introduction to programming in Python from the ground up, starting with tips on installation and setting up your programming environment, and moving through the core parts of the Python language in a logical order. Dr. Jones has drawn on his many years experience teaching programming to produce a book that will guide you through the language step by step in simple terms.

The book doesn't assume any previous knowledge, and introduces fundamental programming concepts like variables, loops and functions using simple terms and easy-to-follow examples that you can run and modify.

The book takes a unique approach to practical exercises. Rather than simply presenting you with the solutions, it shows you how large, complex programs are gradually built up from simple building blocks, explaining the role of every line. You can download the examples and exercise solutions - edit, modify and run them yourself.

Examples and exercise files available at the author's website: Python for complete beginners


Geoprocessing with Python

Chris Garrard

Manning Publications ISBN: 9781617292149, 400 pages, MEAP Began May 2014

Geospatial data is hard to ignore. Nearly every car, phone, or camera has a GPS sensor, and aerial photos, satellite imagery, and data representing political boundaries, roads, rivers, and streams are available for free download from many websites. Geoprocessing is the science of reading, analyzing, and presenting geospatial data programmatically. The Python language, along with dozens of open source libraries and tools, makes it possible to take on professional geoprocessing tasks without investing in expensive proprietary packages like ArcGIS and MapInfo.

Geoprocessing with Python teaches you how to use the Python programming language along with free and open source tools to read, write, and process geospatial data. You'll learn how to access available data sets to make maps or perform your own analyses using free and open source tools like the GDAL, Shapely, and Fiona Python modules. You'll master core practices like handling multiple vector file formats, editing and manipulating geometries, applying spatial and attribute filters, working with projections, and performing basic analyses on vector data. You'll also learn how to create geospatial data, rather than just consuming it. The book also covers how to manipulate and analyze raster data, such as aerial photographs, satellite images, and digital elevation models.

Chapter one available for free: Introduction

MEAP Available at Manning Publications's Site: Geoprocessing with Python


Algorithms and Programming Course

Guilherme Soares Lima

(2015, 100 pages)

The book is a gentle introtuction to algorithms and programming with Python, specially for those that don't know how to program on any language. It has a progressive approach, it covers most of basic topics like programming logics, repetition structures. It is a small book, but yet a powerful tool for learning. It helps get good orientation from the beginning. It has only 100 pages and it's free.


Fundamentals of Python: First Programs

Ken Lambert

ISBN 13: 978-1-111-82270-5 (2012, 510 pages)

An introduction to programming and problem solving with Python (CS1). Covers algorithmic problem solving, basic data structures, functional design, and object-oriented design. Also includes an introduction to turtle graphics, image processing, GUIs, and networks.

  1. Introduction.
  2. Data Types and Expressions.
  3. Control Statements.
  4. Strings and Text Files.
  5. Lists and Dictionaries.
  6. Design with Functions.
  7. Simple Graphics and Image Processing.
  8. Design with Classes.
  9. Graphical User Interfaces.
  10. Multithreading, Networks, and Client/Server Programming.

Link to example programs and other information at the author's website.


Fundamentals of Python: Data Structures

Ken Lambert

ISBN 13: 978-1-285-75200-6 (2014, 496 pages)

An introduction to Python with data structures (CS2). Covers the design of collection classes with polymorphism and inheritance, multiple implementations of collection interfaces, and the analysis of space/time tradeoffs of different collections, all within a realistic collection framework.

  1. Basic Python Programming.
  2. An Overview of Collections.
  3. Searching, Sorting, and Complexity Analysis.
  4. Arrays and Linked Structures.
  5. Interfaces, Implementations, and Polymorphism.
  6. Inheritance and Abstract Classes.
  7. Stacks.
  8. Queues.
  9. Lists.
  10. Trees.
  11. Sets and Dictionaries.
  12. Graphs.

Link to example programs and other information at the author's website.


Easy GUI Programming in Python

Ken Lambert

ISBN-13: 978-0-9859567-0-7 (August, 2012, 110 pages, ebook only)

An introduction to GUI programming in Python. Topics include the basics of window layout, widget configuration, and responding to user events. The book uses a toolkit, breezypythongui, to explore GUI concepts and resources within a simple coding framework.

  1. The Hello World Program
  2. Windows, Layouts, and Window Components
  3. Command Buttons and Responding to Events
  4. Input and Output with Data Fields
  5. Error Handling and Message Boxes
  6. The Model/View/Controller Pattern
  7. Check Buttons, Radio Buttons, and Menus
  8. Scrolling List Boxes
  9. Text Areas and File Dialogs
  10. Dialogs
  11. Canvases and Graphics Operations
  12. Responding to Mouse Events in Canvases

Link to example programs and ebook vendor sites at the author's website.


Building Machine Learning Systems with Python

By Willi Richert, Luis Pedro Coelho

ISBN 13: 9781782161400 Packt Publishing 290 pages (July 2013)

Master the art of machine learning with Python and build effective machine learning systems with this intensive hands-on guide

Who this book was written for

This book is for Python programmers who are beginners in machine learning, but want to learn Machine learning. Readers are expected to know Python and be able to install and use open-source libraries. They are not expected to know machine learning, although the book can also serve as an introduction to some Python libraries for readers who know machine learning. This book does not go into the detail of the mathematics behind the algorithms.

This book primarily targets Python developers who want to learn and build machine learning in their projects, or who want to provide machine learning support to their existing projects, and see them getting implemented effectively.

Publisher's page


Learning to Program Using Python

Cody Jackson

ISBN: 1461182050 (November 2011, 230 pages)

An introduction to computer programming, using the easy, yet powerful, Python programming language. Python, a cross-platform language used by such organizations as Google and NASA, lets you work quickly and efficiently, allowing you to concentrate on your work rather than the language. The core Python language (both versions 2.x and 3.x) is discussed, as well as an introduction to graphical user interface creation.

The ideas covered in this book provide the reader with many major programming topics, applicable to a wide variety of programming languages. After reading this book, the reader should be able to quickly create simple to medium-level programs and be prepared to tackle more complex programming tasks.

Print version

Kindle version (no DRM)

The book's website also provides alternative electronic versions for free, without DRM. In addition, source code files for programs shown in the book are also available.


Python 2.6 Text Processing Beginner's Guide

Jeff McNeil

ISBN 13: 978-1-84951-212-1 Packt Publishing 380 pages (December 2010)

The easiest way to learn how to manipulate text with Python:

Publisher's page


Learning Python, 5th Edition

(Mark Lutz, O'Reilly Media, June 2013, 1600 pages)

An in-depth, tutorial introduction to Python core language fundamentals, based on 260 live classes taught by the author. This edition is updated to cover both Python 3.X and 2.X. It is specifically based on 3.3 and 2.7, but is applicable to other releases.

Links: author, publisher.


Programming Python, 4th Edition

(Mark Lutz, O'Reilly Media, December 2010, 1600 pages)

An in-depth, tutorial introduction to common Python application programming domains, and a follow-up to the core language coverage of Learning Python. This edition is updated to use Python 3.X (3.1 and 3.2 specifically), but is still largely applicable to most 2.X readers.

Links: author, publisher.


Python Pocket Reference, 4th Edition

(Mark Lutz, O'Reilly Media, September 2009, 200 pages)

A reference-only book, designed to serve as a companion to both Learning Python and Programming Python. This edition is updated to cover both Python 3.X and 2.X. It is specifically based on 3.1 and 2.6, but is applicable to other releases.

Links: author, publisher.


Head First Python by Paul Barry

Head First Python

Ever wished you could learn Python from a book? Head First Python helps you learn the language through a unique method that goes beyond syntax and how-to manuals. You'll quickly grasp Python's fundamentals, then move on to persistence, exception handling, web development, SQLite, data wrangling, and Google App Engine. You'll also learn how to write mobile apps for Android, all thanks to the power that Python gives you. Head First Python is a complete learning experience that will help you become a bona fide Python programmer.

This book is designed to get you up to speed with Python as quickly as possible.

See http://python.itcarlow.ie and http://www.headfirstlabs.com/books/hfpython/ for more details.


Practical Programming by Jennifer Campbell, Paul Gries, and Jason Montojo

Practical Programming (2nd edition): An Introduction to Computer Science Using Python 3

Computers are used in every part of science from ecology to particle physics. This introduction to computer science continually reinforces those ties by using real-world science problems as examples. Anyone who has taken a high school science class will be able to follow along as the book introduces the basics of programming, then goes on to show readers how to work with databases, download data from the web automatically, build graphical interfaces, and most importantly, how to think like a professional programmer.


Practical Programming by Jennifer Campbell, Paul Gries, Jason Montojo, and Greg Wilson

Practical Programming: An Introduction to Computer Science Using Python

Computers are used in every part of science from ecology to particle physics. This introduction to computer science continually reinforces those ties by using real-world science problems as examples. Anyone who has taken a high school science class will be able to follow along as the book introduces the basics of programming, then goes on to show readers how to work with databases, download data from the web automatically, build graphical interfaces, and most importantly, how to think like a professional programmer.


Python 3 Object Oriented Programming

Dusty Phillips

ISBN-13: 978-1-849511-26-1 Packt Publishing 404 pages (July 2010)

Harness the power of Python 3 objects:

Overview of Python 3 Object Oriented Programming

Who this book is written for If you're new to Object Oriented Programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply Object Oriented Programming in Python, this is the book for you.

If you are an object-oriented programmer for other languages, you too will find this book a useful introduction to Python, as it uses terminology you are already familiar with.

Python 2 programmers seeking a leg up in the new world of Python 3 will also find the book beneficial, and you need not necessarily know Python 2.

Publisher's page


The Practice of Computing Using Python by Bill Punch and Rich Enbody

The Computer Science Department of Michigan State University converted their Introduction to Programming Course CSE 231 to Python in the Fall of 2007. One of the products of this change was this textbook, written as a general introduction to CS1 using Python. The book adopts the theme of "data manipulation" for its examples, focusing on using real-world datasets and manipulating them (averages, graphs, indicies, searches, etc.) in various ways.

The book covers the standard CS1 curriculum, and includes extensive algorithm development sections to help students in their study of computing. Supplemental material is also provided including: full set of power point slides, collaborative lab exercises, project homeworks and solutions to over 600 exercises in the book.


Head First Programming by Paul Barry and David Griffiths

A Learner's Guide to Programming, using the Python Language

Ever wished you could learn how to program from a book? If you have no previous programming experience, you might be wondering where to start. Head First Programming introduces the core concepts of writing computer programs--variables, decisions, loops, functions, and objects--which apply regardless of the programming language, but uses concrete examples and exercises in the dynamic and versatile Python language to apply and reinforce these concepts.

Learn the basic tools to start writing the programs that interests you, not the generic software someone else thinks you should have, and get a better understanding of what software can (and cannot) do. When you're finished, you'll have the necessary foundation to apply to whatever language or software project you need or want to learn.


Programming in Python 3: A Complete Introduction to the Python Language (Second Edition) by Mark Summerfield

This book teaches you how to write programs using Python 3 in good Python 3 style.

The book will be useful to people who program professionally as part of their job, whether as full-time software developers, or those from other disciplines, including scientists and engineers, who need to do some programming in support of their work. It will also prove ideal for those Python 2 programmers who need to migrate (or prepare to migrate) to Python 3. The book is also suitable for students—the only prerequisite is some basic knowledge of programming in any language, for example, Basic or Java, or of course Python itself.

The book teaches solid procedural style programming, then builds on that to teach solid object-oriented programming, and then goes on to more advanced topics such as descriptors and class decorators. But even newcomers to Python 3 should be able to write useful (although small and basic) programs after reading chapter 1, and then go on to create larger and more sophisticated programs as they work through the chapters.

The book's web site lists the table of contents and has links to extracts. It also has all the examples and exercise solutions available for download.


Python for Software Design: How to Think Like a Computer Scientist by Allen B. Downey, Olin College of Engineering, Massachusetts

Python for Software Design is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging. The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practice each new concept. Exercise solutions and code examples are available from thinkpython.com, along with Swampy, a suite of Python programs that is used in some of the exercises.


Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande

"Computer programming is a powerful tool for children to 'learn learning,' that is, to learn the skills of thinking and problem-solving...Children who engage in programming transfer that kind of learning to other things."--Nicholas Negroponte, the man behind the One Laptop Per Child project that hopes to put a computer in the hands of every child on earth, January 2008

Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great place to start. Plus, programming is fun!

Hello World! provides a gentle but thorough introduction to the world of computer programming. It's written in language a 12-year-old can follow, but anyone who wants to learn how to program a computer can use it. Even adults. Written by Warren Sande and his son, Carter, and reviewed by professional educators, this book is kid-tested and parent-approved. You don't need to know anything about programming to use the book. But you should know the basics of using a computer--e-mail, surfing the web, listening to music, and so forth. If you can start a program and save a file, you should have no trouble using this book.

Color ebook and black and white print book are both available from the publisher at www.manning.com/sande.


Hello Python! by Anthony Briggs

Hello! Python fully covers the building blocks of Python programming and gives you an introduction to more advanced topics such as object-oriented programming, functional programming, network programming, and program design. New (or nearly new) programmers will learn most of what they need to know to start using Python immediately.

A more advanced book than Hello World!, it takes a different tack. You follow along as the author writes a practical project in every chapter. You'll see how programmers think about solving problems with programming, and there are hints on how to extend the projects to suit your own needs.


The Quick Python Book, 2nd edition

This revision of Manning's popular The Quick Python Book offers a clear, crisp introduction to the elegant Python programming language and its famously easy-to-read syntax. Written for programmers new to Python, this updated edition covers features common to other languages concisely, while introducing Python's comprehensive standard functions library and unique features in detail.

After exploring Python's syntax, control flow, and basic data structures, the book shows how to create, test, and deploy full applications and larger code libraries. It addresses established Python features as well as the advanced object-oriented options available in Python 3. Along the way, you'll survey the current Python development landscape, including GUI programming, testing, database access, and web frameworks.

Chapter 4 Chapter 6

Review by Jim Kohli, dzone.com

Ebook and print book are both available from the publisher at www.manning.com/ceder.


IronPython in Action by Michael Foord

IronPython is an implementation of Python for the Microsoft .NET framework, Mono, and the Silverlight and Moonlight browser plugins. IronPython in Action is an introduction to programming with IronPython for both .NET programmers interested in Python and Python programmers new to .NET.

IronPython in Action includes a swift paced Python tutorial, chapters introducing .NET libraries and structured application development with Python, integrating with other .NET languages like C# and VB.NET, server side web programming with ASP.NET and client side web programming with Silverlight, system administration, working with the WPF and Windows Forms user interface libraries and embedding the IronPython engine in .NET applications.

As well as covering specific topics and both Python and .NET libraries the book pays special attention to the nitty-gritty details of Python and .NET integration that previous experience with Python or C# won't necessarily have prepared you for.

Color ebook and black and white print book are both available from the publisher at www.manning.com/foord.


"Beginning Python: From Novice to Professional, Second Edition" Magnus Lie Hetland

ISBN13: 978-1-59059-982-2 Apress Inc, 688 pages (September 2008)

Gain a fundamental understanding of Python’s syntax and features with the second edition of Beginning Python, an up–to–date introduction and practical reference. Covering a wide array of Python–related programming topics, including addressing language internals, database integration, network programming, and web services, you’ll be guided by sound development principles. Ten accompanying projects will ensure you can get your hands dirty in no time.

Updated to reflect the latest in Python programming paradigms and several of the most crucial features found in the forthcoming Python 3.0 (otherwise known as Python 3000), advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.

Home Page (includes electronic version)


Object-Oriented Programming in Python

This is a textbook for an object-oriented introduction to computer science course (CS1) using Python.

Home Page

0136150314, Prentice Hall Publishing, 688 pages (October 2007)


An Introduction to Python (version 2.5)

0954161769, Network Theory Ltd, 164 pages (November 2006)

This is a printed edition of the official Python tutorial by Guido van Rossum. For each copy sold $1 will be donated to the Python Software Foundation.

Home Page (includes electronic version)


Python for Dummies (version 2.5)

0471778648, For Dummies, 410 pages (August 2006)

Home Page

Following the usual Dummies style, this book takes a light-hearted approach to introducing Python. In addition to Python itself, Python for Dummies also gives lots of advice about good programming practices.


Introduction to Computing and Programming Using Python: A Multimedia Approach Mark Guzdial

ISBN: 0131176552 http://coweb.cc.gatech.edu/mediaComp-teach

An introduction to programming by manipulating digital media --- creating negatives and grayscale pictures, splicing sounds, implementing chromakey.


Core Python Programming

ISBN: 0132269937 (2nd ed.); 0130260363 (1st ed.)

Prentice Hall PTR / Pearson Education

~1120 pages (Sep 2006); 810 pages (Jan 2001)

The main goal of this book is comprehensively teaching you the core of the Python language, much more than just its syntax (which you don't really need a book to learn, right?). Knowing more about how Python works under the covers, including the relationship between data objects and memory management, will make you a much more effective Python programmer coming out of the gate. The advanced topics chapters are meant as complete intros or "quick dives" into each of those distinct subjects. However, if moving towards those specific areas of development, they are more than enough to get you pointed in the right direction. We would say that the book is 40% introductory, 40% intermediate (in-depth core Python material plus advanced topics chapters), and 20% reference -- it is *not* meant to be a substitute for a pure reference such as the Python Essential Reference or Python in a Nutshell.

The new 2nd edition is expanded (300 new pages!) and updated through Python 2.5 as well as confirmed functionality for future versions! Also added are a few new chapters of advanced material. As in the 1st edition, a plethora of easy to advanced exercises can be found at the end of every chapter to hammer the concepts home. At the moment, this is the most complete and up-to-date Python book on the market today.

From an anonymous reviewer: "Very well written. It is the clearest, friendliest book I have come across yet for explaining Python, and putting it in a wider context. It does not presume a large amount of other experience. It may be too slow for more advanced people, but it does go into some important Python topics carefully and in depth. Unlike too many beginner books, it never condescends or tortures the reader with childish hide-and-seek prose games. Not too many in-depth real-world examples in the book (hopefully he will do a followup volume), it sticks to gaining a solid grasp of Python syntax and structure."

Home Page (includes book reviews, errata, sample chapter, links to alternate editions, source code from the book, and more!)

Links regarding the 1st edition: IBM Developer Works review Linux Journal review Chinese edition O'Reilly Safari electronic edition Indian edition (English) Korean edition Association of C/C++ Users review Python Learning Foundation review Mississippi Python users group (Useless Python) review


Python Programming: An Introduction to Computer Science

1887902996, Franklin Beedle & Associates, December 2003

This is a textbook for a "traditional" introduction to computer science course (CS1) using Python.

Home Page


0971677506, Green Tea Press 288 pages

How to Think... is a free textbook available under the GNU Free Documentation License. It is a true beginners book. The ebook version is free and available in PDF, HTML and PostScript.

Home Page


1590593561, Apress 432 pages

Dive Into Python is a free Python ebook for experienced programmers available under the GNU Free Documentation License. A printed version has been published by Apress http://www.apress.com/, and is available through all major outlets.

Home Page


Learning Python

0596158068 O'Reilly & Associates, 1216 pages (September 2009)

Learning Python is meant for beginning Python programmers, and others seeking a quick introduction to the language. It focuses on core language fundamentals in depth, is based on Mark Lutz's Python training classes, and includes numerous exercises with solutions to guide the reader through a hands-on learning experience.

O'Reilly's catalog page Author's book page Sample chapters Review of first edition by Phil Hughes in Linux Journal


The Quick Python Book

1884777740, Manning Publications, 275 pages (October 1999)

A clear and concise description of Python aimed at readers who are already familiar with programming in at least one other language.

Two sample chapters Review by Francis Glassborow in _C Vu_ Review by Phil Hughes Review by AMK

A 2nd edition (complete rewrite moving it from Python 1.x to 3.x was published Jan 2010.

Publisher's page for The Quick Python Book, 2nd ed.


Learn to Program Using Python

0201709384, Addison-Wesley, 270 pages (December, 2000)

This book teaches programming in Python to true beginners. It started as a popular Web tutorial, and been expanded into a complete book.

Home Page


Programming Python (Third Edition)

0596009259, O'Reilly & Associates, 1596 pages (August, 2006)

A Python classic, updated and expanded to cover Python 2.5. The first edition, published in 1996, was the first Python book project to be signed. Programming Python is about what you can do with Python after you've mastered the language fundamentals - it assumes you already know the core language, and focuses on applications programming in gradual tutorial fashion. It is designed to be a natural follow-up to the book Learning Python. This book includes 300 pages on GUIs, 500 on Internet programming, and more on databases, systems programming, text processing, Python/C integration, and other topics. Also available in PDF form from O'Reilly.

O'Reilly's catalog page Author's book page Foreword by Guido van Rossum Review of the first edition by Greg Wilson Review of the first edition by Terry Rooker in ;login: Review of the first edition by Danny Yee


Python Pocket Reference (Third Edition)

0596009402, O'Reilly & Associates, 160 pages (February, 2005)

This handy reference guide summarizes Python statements, built-in functions, escape and formatting codes, and other prominent Python language features.


Python Standard Library

0596000960, O'Reilly & Associates, 250 pages (February 2001)

Based in part on 3,000 newsgroup articles written by Python veteran FredrikLundh over the last four and half years, this book provides sample scripts for all standard modules in the Python library. Also available in German.

Author's book page Electronic edition (archived snapshot)


Web Programming in Python: Techniques for Integrating Linux, Apache, and MySQL

0130410659, Prentice Hall, 450 pages (October 2001)

The book has introductory chapters on Python, networking, Apache, Linux, and MySQL. It is a self- contained reference to Python and open-source programming that makes use of Python to develop real applications that are also available under an open source license.


Programming With Python

0761523340, Prima Publishing, (October 1999)

Review by Phil Hughes in Linux Journal Review by Cary Miller


Python Developer's Handbook

0672319942, Sams, 600 pages (December 2000)


Python How to Program

0130923613, Prentice Hall, 1376 pages (2002)

In the renowned Deitel series "How to Program"

description


Text Processing in Python

The free text is available at:

http://gnosis.cx/TPiP/

Buy the dead-trees version at:

http://tinyurl.com/jskh

A review by Danny Yee at: http://dannyreviews.com/h/Text_Python.html

See also: TextProcessingInPython


Python Programming Patterns Thomas Christopher

Prentice-Hall, 2001

ISBN: 0130409561

There's a sample chapter at informIT

Reviews: ACCU review by Francis Glasborow; one of several books in Mertz's book roundup #3


Python First: Introduction to Computing with Python

Atanas Radenski

The 'Python First' digital pack provides a gentle introduction to computer science. It is more than a book: Ten self-contained online chapters consist of e-texts, slides, 62 labs, tens of sample programs, and online quizzes. The 'Python First' pack includes a wealth of detailed self-guided labs that you can complete on your own.

Home Page

Python 2

Practical Programming (in Python) "Practical Programming (in Python)" is meant as a first programming course and is tightly aligned with the University of Otago introductory programming course called Practical Programming. The textbook is organized into 24 "lectures" that cover all the basics of programming (sequence, selection, iteration, functions etc), plus all the major data structures supplied by Python.

This textbook is a modified version of "How to Think Like a Computer Scientist: Learning with Python 2nd Edition", by Jeffrey Elkner, Allen B. Downey and Chris Meyers.


Books no longer available


How Would Pareto Learn Python!

Rahul Verma

Python is a very powerful high level object oriented language and has easy bindings with C,C++,Java etc. It can very well be the first and the only language needed by a software tester for routine test automation tasks as well as for building robust general purpose test automation frameworks.

This online book is written keeping beginners in Python in mind. It bridges the gap between very basic tutorials and comprehensive books.

The book is provided for free by Talent Reboot Trainings and Asessments and hosts the online version of the book as a part of its official website.

Read Online Free Version - How Would Pareto Learn Python

CategoryPythonInEducation CategoryDocumentation


Learning Python (Free eBook)

By Fabrizio Romano

ISBN 13: 9781783551712 Packt Publishing 442 pages (December 2015)

Book Overview:

This book goes deeper than simply showing you how to build a Python app, giving you the fundamentals of Python programming that every developer needs to know to make the most of the language. Packed with tutorials and examples this title features everything from data structures, writing reusable code, testing, paradigms, and how Python can be adapted. This free eBook will help transform you from a complete beginner to someone ready to bring the best out of their projects.

Who this book is written for:

This book is meant for programmers who wants to learn Python programming from a basic to an expert level. The book is mostly self-contained and introduces Python programming to a new reader and can help him become an expert in this trade.

Publisher's page


CategoryPythonWebsite CategoryPyCon2008 CategoryPythonInEducation

IntroductoryBooks (last edited 2023-08-03 20:15:37 by BenDicken)

Unable to edit the page? See the FrontPage for instructions.