| help | account  


Python in a Nutshell, 2nd Edition
View Larger Image
Alex Martelli
O'Reilly Media, Paperback, 2nd edition, Published July 2006, 712 pages, ISBN 0596100469
List Price: $39.99
Our Price: $24.95
You Save: $15.04 (38% Off)


FREE Shipping on Orders over $40!*
Availability: In-Stock
Read an excerpt:
Chapter 4: The Python Language

     

Excerpt provided courtesy of O'Reilly Media. Copyright © O'Reilly Media, Inc Written permission from the publisher is required for any use of this material.

Be the First to Write a Review and tell the world about this title!

People who purchase this book frequently purchase:

Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:

This book offers Python programmers one place to look when they need help remembering or deciphering the syntax of this open source language and its many powerful but scantily documented modules. This comprehensive reference guide makes it easy to look up the most frequently needed information--not just about the Python language itself, but also the most frequently used parts of the standard library and the most important third-party extensions.

Ask any Python aficionado and you'll hear that Python programmers have it all: an elegant object-oriented language with readable and maintainable syntax, that allows for easy integration with components in C, C++, Java, or C#, and an enormous collection of precoded standard library and third-party extension modules. Moreover, Python is easy to learn, yet powerful enough to take on the most ambitious programming challenges. But what Python programmers used to lack is a concise and clear reference resource, with the appropriate measure of guidance in how best to use Python's great power. Python in a Nutshell fills this need.

Python in a Nutshell, Second Edition covers more than the language itself; it also deals with the most frequently used parts of the standard library, and the most popular and important third party extensions. Revised and expanded for Python 2.5, this book now contains the gory details of Python's new subprocess module and breaking news about Microsoft's new IronPython project. Our "Nutshell" format fits Python perfectly by presenting the highlights of the most important modules and functions in its standard library, which cover over 90% of your practical programming needs. This book includes:

* A fast-paced tutorial on the syntax of the Python language
* An explanation of object-oriented programming in Python
* Coverage of iterators, generators, exceptions, modules, packages, strings, and regular expressions
* A quick reference for Python's built-in types and functions and key modules
* Reference material on important third-party extensions, such as Numeric and Tkinter
* Information about extending and embedding Python

Python in a Nutshell provides a solid, no-nonsense quick reference to information that programmers rely on the most. This book will immediately earn its place in any Python programmer's library.
Praise for the First Edition:

"In a nutshell, Python in a Nutshell serves one primary goal: to act as an immediately accessible goal for the Python language. True, you can get most of the same core information that is presented within the covers of this volume online, but this will invariably be broken into multiple files, and in all likelihood lacking the examples or the exact syntax description necessary to truly understand a command."
--Richard Cobbett, Linux Format

"O'Reilly has several good books, of which Python in a Nutshell by Alex Martelli is probably the best for giving you some idea of what Python is about and how to do useful things with it."
--Jerry Pournelle, Byte Magazine

 

Table of Contents

Chapter 1

Preface

I. Getting Started with Python

1. Introduction to Python
     The Python Language
     The Python Standard Library and Extension Modules
     Python Implementations
     Python Development and Versions
     Python Resources

2. Installation
     Installing Python from Source Code
     Installing Python from Binaries
     Installing Jython
     Installing IronPython

3. The Python Interpreter
     The python Program
     Python Development Environments
     Running Python Programs
     The jython Interpreter
     The IronPython Interpreter

II. Core Python Language and Built-ins

4. The Python Language
     Lexical Structure
     Data Types
     Variables and Other References
     Expressions and Operators
     Numeric Operations
     Sequence Operations
     Set Operations
     Dictionary Operations
     The print Statement
     Control Flow Statements
     Functions

5. Object-Oriented Python
     Classes and Instances
     Special Methods
     Decorators
     Metaclasses

6. Exceptions
     The try Statement
     Exception Propagation
     The raise Statement
     Exception Objects
     Custom Exception Classes
     Error-Checking Strategies

7. Modules
     Module Objects
     Module Loading
     Packages
     The Distribution Utilities (distutils)

8. Core Built-ins
     Built-in Types
     Built-in Functions
     The sys Module
     The copy Module
     The collections Module
     The functional Module
     The bisect Module
     The heapq Module
     The UserDict Module
     The optparse Module
     The itertools Module

9. Strings and Regular Expressions
     Methods of String Objects
     The string Module
     String Formatting
     The pprint Module
     The repr Module
     Unicode
     Regular Expressions and the re Module

III. Python Library and Extension Modules

10. File and Text Operations
     Other Chapters That Also Deal with Files
     Organization of This Chapter
     File Objects
     Auxiliary Modules for File I/O
     The StringIO and cStringIO Modules
     Compressed Files
     The os Module
     Filesystem Operations
     Text Input and Output
     Richer-Text I/O
     Interactive Command Sessions
     Internationalization

11. Persistence and Databases
     Serialization
     DBM Modules
     Berkeley DB Interfacing
     The Python Database API (DBAPI) 2.0

12. Time Operations
     The time Module
     The datetime Module
     The pytz Module
     The dateutil Module
     The sched Module
     The calendar Module
     The mx.DateTime Module

13. Controlling Execution
     Dynamic Execution and the exec Statement
     Internal Types
     Garbage Collection
     Termination Functions
     Site and User Customization

14. Threads and Processes
     Threads in Python
     The thread Module
     The Queue Module
     The threading Module
     Threaded Program Architecture
     Process Environment
     Running Other Programs
     The mmap Module

15. Numeric Processing
     The math and cmath Modules
     The operator Module
     Random and Pseudorandom Numbers
     The decimal Module
     The gmpy Module

16. Array Processing
     The array Module
     Extensions for Numeric Array Computation
     The Numeric Package
     Array Objects
     Universal Functions (ufuncs)
     Auxiliary Numeric Modules

17. Tkinter GUIs
     Tkinter Fundamentals
     Widget Fundamentals
     Commonly Used Simple Widgets
     Container Widgets
     Menus
     The Text Widget
     The Canvas Widget
     Layout Management
     Tkinter Events

18. Testing, Debugging, and Optimizing
     Testing
     Debugging
     The warnings Module
     Optimization

IV. Network and Web Programming

19. Client-Side Network Protocol Modules
     URL Access
     Email Protocols
     The HTTP and FTP Protocols
     Network News
     Telnet
     Distributed Computing
     Other Protocols

20. Sockets and Server-Side Network Protocol Modules
     The socket Module
     The SocketServer Module
     Event-Driven Socket Programs

21. CGI Scripting and Alternatives
     CGI in Python
     Cookies
     Other Server-Side Approaches

22. MIME and Network Encodings
     Encoding Binary Data as Text
     MIME and Email Format Handling

23. Structured Text: HTML
     The sgmllib Module
     The htmllib Module
     The HTMLParser Module
     The BeautifulSoup Extension
     Generating HTML

24. Structured Text: XML
     An Overview of XML Parsing
     Parsing XML with SAX
     Parsing XML with DOM
     Changing and Generating XML

V. Extending and Embedding

25. Extending and Embedding Classic Python
     Extending Python with Python's C API
     Extending Python Without Python's C API
     Embedding Python
     Pyrex

26. Extending and Embedding Jython
     Importing Java Packages in Jython
     Embedding Jython in Java
     Compiling Python into Java

27. Distributing Extensions and Programs
     Python's distutils
     py2exe
     py2app
     cx_Freeze
     PyInstaller

Index

 

About the Author

Alex Martelli spent 8 years with IBM Research, winning three Outstanding Technical Achievement Awards. He then spent 13 as a Senior Software Consultant at think3 inc, developing libraries, network protocols, GUI engines, event frameworks, and web access frontends. He has also taught programming languages, development methods, and numerical computing at Ferrara University and other venues. He's a C++ MVP for Brainbench, and a member of the Python Software Foundation. He currently works for AB Strakt, a Python-centered software house in Göteborg, Sweden, mostly by telecommuting from his home in Bologna, Italy. Alex's proudest achievement is the articles that appeared in Bridge World (January/February 2000), which were hailed as giant steps towards solving issues that had haunted contract bridge theoreticians for decades.




Forgot your password?
FAQs
Shipping Options
Returns
Your Orders
Your Account