Beginning Python

AuthorMagnus Lie Hetland
PublishedSeptember 26, 2005
DownloadSample chapter  |  Table of contents  |  Errata  |  Source Code
Buy it from…  |  |  Barnes & Noble

Note: This is an old edition of the book. You can find the most recent edition here.

From Slashdot: Unlike what the title would suggest, Beginning Python isn’t only for the first few weeks with the language. The book is large and in depth, and the coverage of material is fantastic in many ways. You get a quick tour of the basics and then you move on to an overview of the language and then its common features. […]

I have begun recommending this book to people I know that are smart and program in other languages, but aren’t very familiar with Python. Many beginners books only take a person so far before they become a useless item on the shelf. This means that the $30 or more that was spent is now gone, so I’ve grown to be observant of how long I expect a book to be useful. I anticipate the useful shelf life of Beginning Python will be longer than average for most general purpose programming books for a single language. What’s more is that it’s not a dry reference book. […]

If you’ve been curious to learn Python and haven’t yet found the book that speaks to you clearly, this may be the one. I’m pleased with the quality of the writing, the examples, and the quick pace of the book. While it’s nearly 30 chapters in length, most of them are short and focused, making them easily digestible and highly useful. Overall probably the best Python book I’ve had the good fortune of reading. (Read the full review.)

From The JavaRanch Bunkhouse: I could write about how Apress has a knack for publishing great books by great authors. I could write about how “Beginning Python” is one of my favorite books so far, and not just on Python. I could write about how Magnus Lie Hetland does a wonderful job of introducing the reader to the Python language. I could write about how “Beginning Python” is one of the few books that actually delves into as many possible uses for the Python language from simple lists and string manipulation to GUI’s to web development. Believe it or not, with all the great content in this book, the best is yet to come. […]

For anyone wanting to learn Python or for a Python developer that wants to expand their knowledge and increase their productivity and find new uses for a great language, “Beginning Python” is a must have. It’s definitely one of my top five (5) favorite programming books. (Read the full review.)

From Apress: Beginning Python: From Novice to Professional is the most comprehensive book on the Python ever written. Based on Practical Python, this newly revised book is both an introduction and practical reference for a swath of Python-related programming topics, including addressing language internals, database integration, network programming, and web services. Advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.

Ten different projects illustrate the concepts introduced in the book. You will learn how to create a P2P file-sharing application and a web-based bulletin board, and how to remotely edit web-based documents and create games. Author Magnus Lie Hetland is an authority on Python and previously authored Practical Python. He also authored the popular online guides, Instant Hacking and Instant Python, on which both books are based.

From the back cover:

Dear Reader,

Python is a remarkably intuitive and powerful programming language. It offers a syntax that lets you write clear and readable programs, while working in such diverse areas as system administration, Web development, client-side applications, and more. I’ve updated my highly regarded book on this topic, Practical Python, to introduce you to all that this wonderful language has to offer, and this is the result of those efforts.

Actively developed for more than a decade, Python has matured significantly, and now supports many language features that encourage convenient and efficient programming. In the early chapters, you’ll learn about several of these features, starting with language basics and progressing to lists, tuples, dictionaries, and object-orientation. Later chapters discuss Python’s wide array of more specialized capabilities, such as its support for file management, database integration, network programming, graphical user interface development, and Web services.

Although this book is largely geared towards beginning and intermediate Python programmers, I’ve added several new chapters on advanced matters such as application testing, language extension, and application packaging and distribution. These topics are useful to Python programmers of all levels, and therefore it seems natural to introduce them after you’ve mastered the key language concepts.

Chapters 20 through 29 are devoted to ten projects that put the various techniques introduced throughout the book into action. Among other things, you’ll learn how to create your own peer-to-peer file sharing system, chat server and clients, and Web-based bulletin board.

If you’ve set out to learn Python programming, I believe this book can help you find your way quickly and painlessly. Hopefully, you’ll even have quite a bit of fun while you’re at it.

Magnus Lie Hetland