Programming in Python 3 (First Edition)

A Complete Introduction to the Python Language
by Mark Summerfield

ISBN-10: 0137129297 – ISBN-13: 978-0137129294

This book has been superceded by Programming in Python 3: A Complete Introduction to the Python Language (Second Edition).

This book teaches you how to write programs using Python 3, the most up to date, powerful and flexible version of Python yet released. Python 3 introduces many new idioms compared with Python 2 that make programming with it easier and at the same time helps produce clearer and more maintainable code. Python 3 is a superb very high level language, that is very easy to learn and use even by relatively inexperienced programmers. And once learned, Python 3 does not impose limits or restrictions, instead offering incredibly powerful and advanced facilities for those who want to learn and use them. Python  runs on Windows and most Unix-like operating systems such as Mac OS X, BSD, and Linux.

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, Java, or JavaScript, or of course Python itself.

The book is ~500 pages (540 with forematter, index, etc.), and is published by Addison-Wesley Professional. Previews are available from Safari, and the Introduction, first few pages of Chapter 1, all of Chapter 12 (Regular Expressions), and the index is available from InformIT (click the Sample Content tab and then the Download the sample pages link.).
The book can be bought from,, and other online and local book stores.

Only the English printed editions are definitive—although available in electronic formats, "ebooks" usually restrict your rights, and they are often retypeset which can introduce errors. Translations are arranged by the publisher and their quality can vary considerably.


The source code is available in two formats, py3book1.tar.gz (288K suitable for any platform), and (388K Windows line endings) [updated 2009-05-18]—all the examples and code snippets work with Python 3.0 and 3.1. There is also an Errata [updated 2009-09-21].

Table of Contents—the chapters also have exercises and summaries

Programming in Python 3 book cover


For more information on Python 3 see the Python website.

Like all my books and most of my other writings, this book was written using The Lout Typesetting System.

Book Cover