Programming Books C Java PHP Python Learn more Browse Programming Books
Programming in Python 3: A Complete Introduction to the P... and over one million other books are available for Amazon Kindle. Learn more
Buy New
  • List Price: $49.99
  • Save: $20.59 (41%)
FREE Shipping on orders over $35.
In Stock.
Ships from and sold by
Gift-wrap available.
Add to Cart
Trade in your item
Get a $2.00
Gift Card.
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Programming in Python 3: A Complete Introduction to the Python Language (2nd Edition) Paperback – November 22, 2009

ISBN-13: 978-0321680563 ISBN-10: 0321680561 Edition: 2nd

Buy New
Price: $29.40
37 New from $27.51 36 Used from $8.39
Amazon Price New from Used from
"Please retry"
"Please retry"
$27.51 $8.39

Frequently Bought Together

Programming in Python 3: A Complete Introduction to the Python Language (2nd Edition) + Python in Practice: Create Better Programs Using Concurrency, Libraries, and Patterns (Developer's Library) + Python Cookbook
Price for all three: $93.65

Buy the selected items together


Save up to 90% on Textbooks
Rent textbooks, buy textbooks, or get up to 80% back when you sell us your books. Shop Now

Product Details

  • Paperback: 648 pages
  • Publisher: Addison-Wesley Professional; 2 edition (November 22, 2009)
  • Language: English
  • ISBN-10: 0321680561
  • ISBN-13: 978-0321680563
  • Product Dimensions: 9 x 7.1 x 1.3 inches
  • Shipping Weight: 2.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (50 customer reviews)
  • Amazon Best Sellers Rank: #131,706 in Books (See Top 100 in Books)

Editorial Reviews


“…Fulfills the immediate market need for those developers seeking to learn this latest evolutionary version of the Python lineage in a succinct, well-written package.”

–Mike Riley, Contributing Editor for Dr. Dobb’s


“Beyond the introduction to programming in Python 3 in the first chapter, if you progress through the first six chapters in sequence, you’ll be well on your way to taking off with using Python independently.”

–James Pyles, Technical Writer and Author of the blog “A Million Chimpanzees”


“…A key recommendation for any serious computer library strong in web programming languages.”

–Jim Cox, Midwest Book Review


“Summerfield’s book is an excellent source to start learning Python 3.”

–Anthony J. Duben, Computing Reviews

From the Back Cover

A Fully Revised Edition Featuring New Material on Coroutines, Debugging, Testing, Parsing, String Formatting, and More


Python 3 is the best version of the language yet: It is more powerful, convenient, consistent, and expressive than ever before. Now, leading Python programmer Mark Summerfield demonstrates how to write code that takes full advantage of Python 3's features and idioms.Programming in Python 3, Second Edition,brings together all the knowledge you need to write any program, use any standard or third-party Python 3 library, and create new library modules of your own.


Summerfield draws on his many years of Python experience to share deep insights into Python 3 development you won't find anywhere else. He begins by illuminating Python's “beautiful heart”: the eight key elements of Python you need to write robust, high-performance programs. Building on these core elements, he introduces new topics designed to strengthen your practical expertise-one concept and hands-on example at a time. Coverage includes

  • Developing in Python using procedural, objectoriented, and functional programming paradigms
  • Creating custom packages and modules
  • Writing and reading binary, text, and XML files, including optional compression, random access, and text and XML parsing
  • Leveraging advanced data types, collections, control structures, and functions
  • Spreading program workloads across multiple processes and threads
  • Programming SQL databases and key—value DBM files
  • Debugging techniques-and using Test Driven Development to avoid bugs in the first place
  • Utilizing Python's regular expression mini-language and module
  • Parsing techniques, including how to use the third-party PyParsing and PLY modules
  • Building usable, efficient, GUI-based applications
  • Advanced programming techniques, including generators, function and class decorators, context managers, descriptors, abstract base classes, metaclasses, coroutines, and more


Programming in Python 3, Second Edition,serves as both tutorial and language reference. It assumes some prior programming experience, and it is accompanied by extensive downloadable example code-all of it tested with Python 3 on Windows, Linux, and Mac OS X.

More About the Author

Mark Summerfield is a computer science graduate with many years experience working in the software industry, primarily as a programmer. He also spent a few years as Trolltech's documentation manager where he founded and edited Trolltech's technical journal, Qt Quarterly. Mark owns Qtrac Ltd.,, where he works as an independent programmer, author, editor, and trainer, specializing in C++, Qt, Python, and PyQt.

All Mark's books are aimed at programmers and others, such as students, scientists, and engineers, who already have some programming experience (how much depends on the individual book). Each solo book has its own page on the Qtrac website from which the source code can be downloaded and that lists the book's errata. All the books are designed to teach technologies that Mark loves and has found to be the best of their kind.

Customer Reviews

Books is well structured and explains the concepts well.
J. Perez
Too much detail of things I really don't care about, and the important stuff for me comes way too late in the book (for example, regex).
Highly recommended to any programmer thinking about trying Python.
Leon Matthews

Most Helpful Customer Reviews

51 of 54 people found the following review helpful By Kelly D. Painter on January 6, 2009
Format: Paperback Verified Purchase
I am new to Python and wanted to learn. Prior to purchasing this book, I was reading "Learning Python" by Mark Lutz. I was literally half way through that book and couldn't write even a simple script due to the way that book is structured. I would not recommend that book. I was frustrated and ordered this book due to its coverage of Python 3. I am pleased.

This book takes an approach that gives the reader a quick overview of the language that is complete enough to start using Python by page 40! When the book mentions a topic that is covered elsewhere, there is a little box in the margin that tells the page that topic is covered - foward and backward. Great idea! That is very handy.

I had a little task that I wanted to write a script to do and I was able to do that easily after finishing the quick intro.

I am still reading the book and there is a lot of advanced information that I have not read yet. If the beginning of the book is any indication, it will be quite useful.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
33 of 37 people found the following review helpful By Swiftboat on August 29, 2010
Format: Paperback Verified Purchase
Mark Summerfield's text: "Programming in Python 3" is a very good introduction to the Python programming language for people with prior programming experiance in another language. I came to Python from MatLab and prior to that, C and Fortan. So I'm pleased with the book and find myself refering back to it quite often. Having said that, this is not a "For Dummies" type book. Familiarity with with directory structure, file handling, and command prompt (console) operation is assumed.

The book covers all of the built in types and programming constructs of the Python language. It also introduces some of the useful (batteries included) standard library functinality along with details for working with modules and packages.

Finally, as I'm working my way into the middle of the book, I'm finding that it's a good introduction to object-oriented (OO) programming concepts and techniques in the clean syntax of the Python language. The OO concepts are not obfuscated by a language that is too criptic or too messy. Since this is about where I'm at on my own learning curve, the book is proving quite useful.
2 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
24 of 27 people found the following review helpful By B. Blazer on September 5, 2010
Format: Paperback
This is a great book that covers Python 3 in a very orderly and concise manner. Readers are quickly introduced to the power of the language in the first 2 chapters, then each of the topics are covered in a more in depth way later in the book. This, however, is why I gave it only 4 stars. These beginning chapters may feel intimidating to some as the may feel as though they have been dropped in the deep end of the pool. More complex concepts like short-circuit logic are given but a few lines of explanation where a more detailed analysis may be warranted. All that said, it is the book I chose as the text for the python course I teach at the college level. I have limited time to get the students up and running, and this book surely does that. It also is a good stand alone reference that many of my students have chosen to keep on their bookshelves rather than return to the bookstore at the end of the semester. In short, it is concise, fast-paced, and in depth - covering enough of the language that the reader can come out the end feeling like they have a fairly good grasp of the language, concepts, and "pythonic thinking."
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
32 of 38 people found the following review helpful By R Foose on April 2, 2009
Format: Paperback Verified Purchase
A previous reviewer mentioned his experience with Mark Lutz's book. I had a similar experience with Lutz's book too. Unfortunately, after what starts out with a very useful approach (one which should be widely used by other authors) of getting you up and running quickly, Summerfield's book falls into the same problems that Lutz's book had. Namely, it s very densely written, with no obvious separation in the text from what is the useful overall knowledge about a topic and what is the more arcane. I plodded through about the first third of the book, until I realized I was becoming confused about what I already knew about I quit. To be fair, the book is not intended as a tutorial so much as it is a reference. But I have to say, that it needs a major overhaul before it can be really useful in this context too. For example, more separation using white space, or sub heads, or something, should separate sections within a chapter, and separate examples and illustrations from unrelated previous or subsequent text. A little more use of emphasis or italics to highlight key text would be nice as well. And the font used for text and code is too similar, in my opinion. Especially when the code is inline with the text. That Summerfield knows Python is quite obvious. Too bad he and his publisher are not a bit more aware of how to present that knowledge to the rest of the world.
2 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
12 of 13 people found the following review helpful By Gregory Engel on May 30, 2009
Format: Paperback Verified Purchase
This book is clearly targeted at developers who are already experienced programmers in some other language, who wish to migrate their skills over to Python. The book goes through each of Python's language features piece by piece, in a no-nonsense, concise manner. The book is excellent at explaining how Python implements various programming paradigms and different approaches to the "Python way" of doing things. It doesn't "talk down" to you, or spend chapters and chapters going over basic demo programs. This allows the book to cover a lot of topics very thoroughly.

For me, the book was an excellent read and a great way to dive in to Python, and I expect other programmers would have the same experience. However, the pace is probably a bit too brisk for people who are programming for the very first time.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Customer Images

Most Recent Customer Reviews