21
Programming Python, 3rd Edition
Filed Under (Python) by Abdul Jaleel Malik on 21-08-2008
Tagged Under : Programming, Python

Completely revised and improved, the second edition of Programming Python is an excellent compendium of material geared toward the more knowledgeable Python developer. It includes dozens of reusable scripts for common scripting tasks, and is one of the best available sources of information for this popular object-oriented scripting language.
In over 1,200 pages of material, this book offers an extremely comprehensive guide to Python development. Though his book is densely packed with information, Mark Lutz is a lively and witty writer whose focus is on getting things done using the natural strengths of the Python language. To that end, after an introduction and history of the language, the book shows how to use Python for performing automated tasks with files and directories (for example, for doing backups both locally and on Web servers). Not only will this book teach you more about Python, but it will also give you a library of code that you can use as is or adapt for your own projects.
The text covers every conceivable facet of Python and the language’s support for networking, files and directories, task management, and even persistence (through its support for shelves). Complete Python programs show how to create e-mail clients, do reporting, and create Web applications (for an online errata database). Chapters on doing graphics programming in Python, as well as coverage of both built-in and custom data structures, are especially good. Because Python is often used for automating installations (in some Linux distributions, for instance), readers will appreciate the sample code and tips for using Python to create bulletproof installs.
Later sections show how get Python to work with C, Java (through JPython), and other languages. The book concludes with useful reference sections summarizing key aspects of Python, like its revision history, relationship to C++, and other material. There aren’t many titles on Python, and fans of this up-and-coming language are lucky to have such a solid tutorial and guide available in Programming Python. Perfect for those with just a little previous exposure to the language, it’s all you need to master Python in-depth and tap its considerable power for virtually any software project. –Richard Dragan
Topics covered:
- Introduction to Python
- Basic system scripts with Python (including file and directory tools)
- Working with processes and threads
- Pipes and signals
- Sample scripts for system and Web utilities (including backing up files, program launching, replicating and managing directories)
- Graphical user interface design in Python (including the Tkinter module)
- Widgets and basic components
- Layout options
- Event handling
- GUI examples (including a working text editor, image viewer, and clock)
- Network scripting (sockets, FTP, and e-mail clients)
- Server-side scripting
- Sample server scripts for an online errata database
- Python on the Internet (including Zope, JPython, and XML tools)
- Databases and persistence in Python (including pickled objects and shelf files)
- Custom and built-in data structures in Python
- Text and string handling
- C integration with Python (including the SWIG module)
- Embedding Python calls within C
- Hints for using Python in real projects
- Reference to recent changes to Python
- Python vs. C++ quick-start guide
Product Description
Already the industry standard for Python users, "Programming Python" from O’Reilly just got even better. This third edition has been updated to reflect current best practices and the abundance of changes introduced by the latest version of the language, Python 2.5.
Whether you’re a novice or an advanced practitioner, you’ll find this refreshed book more than lives up to its reputation. "Programming Python," 3rd Edition, teaches you the right way to code. It explains Python language syntax and programming techniques in a clear and concise manner, with numerous examples that illustrate both correct usage and common idioms. By reading this comprehensive guide, you’ll learn how to apply Python in real-world problem domains such as: GUI programming Internet scripting Parallel processing Database management Networked applications
"Programming Python," Third Edition covers each of these target domains gradually, beginning with in-depth discussions of core concepts and then progressing toward complete programs. Large examples do appear, but only after you’ve learned enough to understand their techniques and code.
Along the way, you’ll also learn how to use the Python language in realistically scaled programs–concepts such as Object-Oriented Programming (OOP) and code reuse are recurring side themes throughout this text. If you’re interested in Python programming, then this O’Reilly classic needs to be within arm’s reach. The wealth of practical advice, snippets of code, and patterns of program design can all be put into use on a daily basis–making your life easier and more productive.
Reviews of the second edition:
,,"."about as comprehensive as any book can be.""
–Dr.Dobb’s Journal
""If the language had manuals, they would undoubtedly be the texts from O’Reilly…’Learning Python’ and ‘Programming Python’ are definitive treatments.""
–SD Times
Although code examples are reused throughout the book and later chapters build upon material in earlier chapters (e.g., GUIs), topics in this book are covered fairly independently and are grouped together in different parts. If a particular domain’s part doesn’t interest you, you can generally skip ahead to a part that does.
As a result, it’s not too much of a stretch to consider this edition as akin to four or five books in one. Its top-level structure underscores its application-topics focus (see the Table of Contents for a more fine-grained look at the book’s structure):
Part I, The Beginning
I start off with an overview of some of the main ideas behind Python and a quick sneak-preview chapter to whet your appetite. The sneak preview doesn’t teach much, but it serves as an introduction and demo for some of the topics to come, and as a refresher for core Python concepts such as OOP.
Part II, System Programming
This section explores the system-level interfaces in Python as well as their realistic applications. We’ll look at topics such as threading, directory walkers, processes, environment variables, and streams, and we will apply such tools to common system administration tasks such as directory searchers and file splitters.
Part III, GUI Programming
In this section, you’ll learn how to build portable GUIs with Python. The Tkinter toolkit is covered from the ground up as you move from basics to techniques to constructing complete programs. You’ll build text editors, clocks, and more in this part. GUIs also show up throughout the rest of the book, and they often reuse some of the tools you’ll build here.
Part IV, Internet Programming
In this section, you’ll learn all about using Python on the Internet. I begin with network basics and sockets, move through client-side tools like FTP and email, and end up using server-side tools to implement interactive web sites. Along the way, I’ll contrast different ways to move bits around the Web with Python. You’ll code GUI and web-based email programs, for example, to help underscore trade-offs between client- and server-side techniques. A final chapter in this part surveys more advanced toolkits and techniques for Internet-related application developmentZope, Jython, XML, and the like.
Part V, Tools and Techniques
This part is a collection of tool topics that span application domainsdatabase interfaces and object persistence, text and language processing, and data structure implementation. You’ll build GUIs here for browsing databases, viewing data structures, and performing calculations.
Part VI, Integration
This part of the book looks at the interfaces available for mixing Python with programs written in C and C++. These interfaces allow Python to script existing libraries and to serve as an embedded customization tool. As you’ll see, by combining Python with compiled languages, programs can be both flexible and efficient.
Download
RapidShare
or
http://tinyurl.com/5b4g8a