Books & Videos

Table of Contents

  1. Chapter 1 Introducing Python

    1. “And Now for Something Completely Different”

    2. The Life of Python

    3. The Compulsory Features List

    4. What’s Python Good For?

    5. What’s Python Not Good For?

  2. System Interfaces

    1. Chapter 2 System Tools

      1. “The os.path to Knowledge”
      2. Why Python Here?
      3. System Scripting Overview
      4. The sys Module
      5. The os Module
      6. Script Execution Context
      7. Current Working Directory
      8. Command-Line Arguments
      9. Shell Environment Variables
      10. Standard Streams
      11. File Tools
      12. Directory Tools
    2. Chapter 3 Parallel System Tools

      1. “Telling the Monkeys What to Do”
      2. Forking Processes
      3. Threads
      4. Program Exits
      5. Interprocess Communication
      6. Pipes
      7. Signals
      8. Launching Programs on Windows
      9. Other System Tools
    3. Chapter 4 Larger System Examples I

      1. “Splits and Joins and Alien Invasions”
      2. Splitting and Joining Files
      3. Generating Forward-Link Web Pages
      4. A Regression Test Script
      5. Packing and Unpacking Files
      6. User-Friendly Program Launchers
    4. Chapter 5 Larger System Examples II

      1. “The Greps of Wrath”
      2. Fixing DOS Line Ends
      3. Fixing DOS Filenames
      4. Searching Directory Trees
      5. Visitor: Walking Trees Generically
      6. Copying Directory Trees
      7. Deleting Directory Trees
      8. Comparing Directory Trees
  3. GUI Programming

    1. Chapter 6 Graphical User Interfaces

      1. “Here’s Looking at You, Kid”
      2. Python GUI Development Options
      3. Tkinter Overview
      4. Climbing the GUI Learning Curve
      5. The End of the Tutorial
      6. Python/Tkinter for Tcl/Tk Converts
    2. Chapter 7 A Tkinter Tour, Part 1

      1. “Widgets and Gadgets and GUIs, Oh My!”
      2. Configuring Widget Appearance
      3. Toplevel Windows
      4. Dialogs
      5. Binding Events
      6. Message and Entry
      7. Checkbutton, Radiobutton, and Scale
      8. Running GUI Code Three Ways
      9. Images
    3. Chapter 8 A Tkinter Tour, Part 2

      1. “On Today’s Menu: Spam, Spam, and Spam”
      2. Menus
      3. Listboxes and Scrollbars
      4. Text
      5. Canvas
      6. Grids
      7. Time Tools, Threads, and Animation
      8. The End of the Tour
      9. The PyDemos and PyGadgets Launchers
    4. Chapter 9 Larger GUI Examples

      1. “Building a Better Mouse Trap”
      2. Advanced GUI Coding Techniques
      3. Complete Program Examples
      4. PyEdit: A Text Editor Program/Object
      5. PyView: An Image and Notes Slideshow
      6. PyDraw: Painting and Moving Graphics
      7. PyClock: An Analog/Digital Clock Widget
      8. PyToe: A Tic-Tac-Toe Game Widget
      9. Where to Go from Here
  4. Internet Scripting

    1. Chapter 10 Network Scripting

      1. “Tune in, Log on, and Drop out”
      2. Plumbing the Internet
      3. Socket Programming
      4. Handling Multiple Clients
      5. A Simple Python File Server
    2. Chapter 11 Client-Side Scripting

      1. “Socket to Me!”
      2. Transferring Files over the Net
      3. Processing Internet Email
      4. The PyMailGui Email Client
      5. Other Client-Side Tools
    3. Chapter 12 Server-Side Scripting

      1. “Oh What a Tangled Web We Weave”
      2. What’s a Server-Side CGI Script?
      3. Climbing the CGI Learning Curve
      4. The Hello World Selector
      5. Coding for Maintainability
      6. More on HTML and URL Escapes
      7. Sending Files to Clients and Servers
    4. Chapter 13 Larger Web Site Examples I

      1. “Things to Do When Visiting Chicago”
      2. The PyMailCgi Web Site
      3. The Root Page
      4. Sending Mail by SMTP
      5. Reading POP Email
      6. Utility Modules
      7. CGI Script Trade-offs
    5. Chapter 14 Larger Web Site Examples II

      1. “Typos Happen”
      2. The PyErrata Web Site
      3. The Root Page
      4. Browsing PyErrata Reports
      5. Submitting PyErrata Reports
      6. PyErrata Database Interfaces
      7. Administrative Tools
      8. Designing for Reuse and Growth
    6. Chapter 15 Advanced Internet Topics

      1. “Surfing on the Shoulders of Giants”
      2. Zope: A Web Publishing Framework
      3. HTMLgen: Web Pages from Objects
      4. JPython ( Jython): Python for Java
      5. Grail: A Python-Based Web Browser
      6. Python Restricted Execution Mode
      7. XML Processing Tools
      8. Windows Web Scripting Extensions
      9. Python Server Pages
      10. Rolling Your Own Servers in Python
  5. Assorted Topics

    1. Chapter 16 Databases and Persistence

      1. “Give Me an Order of Persistence, but Hold the Pickles”
      2. Persistence Options in Python
      3. DBM Files
      4. Pickled Objects
      5. Shelve Files
      6. SQL Database Interfaces
      7. PyForm: A Persistent Object Viewer
    2. Chapter 17 Data Structures

      1. “Roses Are Red, Violets Are Blue; Lists Are Mutable, and So Is Class Foo”
      2. Implementing Stacks
      3. Implementing Sets
      4. Binary Search Trees
      5. Graph Searching
      6. Reversing Sequences
      7. Permuting Sequences
      8. Sorting Sequences
      9. Data Structures Versus Python Built-ins
      10. PyTree: A Generic Tree Object Viewer
    3. Chapter 18 Text and Language

      1. “See Jack Hack. Hack, Jack, Hack”
      2. Strategies for Parsing Text in Python
      3. String Module Utilities
      4. Regular Expression Matching
      5. Parser Generators
      6. Hand-Coded Parsers
      7. PyCalc: A Calculator Program/Object
  6. Integration

    1. Chapter 19 Extending Python

      1. “I Am Lost at C”
      2. C Extensions Overview
      3. A Simple C Extension Module
      4. The SWIG Integration Code Generator
      5. Wrapping C Environment Calls
      6. A C Extension Module String Stack
      7. A C Extension Type String Stack
      8. Wrapping C++ Classes with SWIG
    2. Chapter 20 Embedding Python

      1. “Add Python. Mix Well. Repeat.”
      2. C Embedding API Overview
      3. Basic Embedding Techniques
      4. Registering Callback Handler Objects
      5. Using Python Classes in C
      6. ppembed: A High-Level Embedding API
      7. Other Integration Topics
  7. The End

    1. Chapter 21 Conclusion: Python and the Development Cycle

      1. “That’s the End of the Book, Now Here’s the Meaning of Life”
      2. “Something’s Wrong with the Way We Program Computers”
      3. The “Gilligan Factor”
      4. Doing the Right Thing
      5. Enter Python
      6. But What About That Bottleneck?
      7. On Sinking the Titanic
      8. So What’s Python: The Sequel
      9. In the Final Analysis...
      10. Postscript to the Second Edition
    2. Appendix Recent Python Changes

      1. Major Changes in 2.0
      2. Major Changes in 1.6
      3. Major Changes Between 1.3 and 1.5.2
    3. Appendix Pragmatics

      1. Installing Python
      2. Book Examples Distribution
      3. Environment Configuration
      4. Running Python Programs
      5. Python Internet Resources
    4. Appendix Python Versus C++

  1. Colophon