Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Mail Systems
Eclipse Documentation

How To Guides
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Problem Solutions




Chapter 30. The Python Library

Consistent with the Pythonic “Batteries Included” philopsophy, there are hundreds of extension modules. It can be difficult to match a programming need with a specific module. The Python Library Reference document can be hard to pick through to locate an appropriate module. We'll start at the top of the library organization and work our way down to a useful subset of the tremendous wealth that is Python.

In the section called “Overview of the Python Library” we'll take a very high level overview of what's in the Python library. We'll closely at the 50 or so most useful modules in the section called “Most Useful Library Sections”.

Overview of the Python Library

The Python Library Reference organizes modules into the following sections. The current version of the Library documentation strives to prsent the modules with the most useful near the front of the list. The first 23 chapters, plus chapter 26 are the most useful. From chapter 24 and below (except for chapter 26), the modules are too highly specialized to cover in this book.

  1. Introduction

  2. Built-in Objects. This chapter provides complete documentation of the built-in functions, exceptions and constants.

  3. Built-in Types. All of the data types we've looked at are documented completely in this chapter of the library reference. Of course, there are additional types in the Python reference that we haven't looked at.

  4. String Services. This chapter includes almost a dozen modules for various kinds of string and text handling. This includes regular expression pattern matching, Unicode codecs and other string-processing modules.

  5. Data Types. This chapter has almost 20 modules providing additional data types, including datetime,

  6. Numeric and Mathematical Modules. This chapter describes math, decimal and random modules.

  7. Internet Data Handling. One secret behind the internet is the use of standardized sophisticated data objects, like email messages with attachments. This chapter covers over a dozen modules for handling data passed through the internet.

  8. Structured Markup Processing Tools. XML, HTML and SGML are all markup languages. This chapter covers tools for parsing these languages to separate the content from the markup.

  9. File Formats. This chapter covers modules for parsing files in format like Comma Separated Values (CSV).

  10. Cryptographic Services. This chapter has modules which can be used to develop and compare secure message hashes.

  11. File and Directory Access. This chapter of the Library Reference covers many of the modules we'll look at in Chapter 33, File Handling Modules .

  12. Data Compression and Archiving. This chapter describes modules for reading and writing zip files, tar files and BZ2 files. We'll cover these modules in Chapter 33, File Handling Modules , also.

  13. Data Persistence. Objects can be written to files, sockets or databases so that they can persist beyond the processing of one specific program. This chapter covers a number of packages for pickling objects so they are preserved. The SQLite 3 relational database is also described in this module.

  14. Generic Operating System Services. An Operating System provides a number of services to our application programs, including access to devices and files, consistent notions of time, ways to handle command-line options, logging, and handling operating system errors. We'll look some of these modules in Chapter 35, Programs: Standing Alone .

  15. Optional Operating System Services. This section includes operating system services that are common to most Linux variants, but not always available in Windows.

  16. Unix Specific Services. There are a number of Unix and Linux-specific features provided by these modules.

  17. Interprocess Communication and Networking. Larger and more complex application programs often consist of multiple, cooperating components. The World Wide Web, specifically, is based on the interaction between client and server programs. This chapter describes modules that provide a basis for communcating among the OS processes that execute our programs.

  18. Internet Protocols and Support. This chapter describes over two dozen modules that process a wide variety of internet-related data structures. This varies from the relatively simple processing of URL's to the relatively complex processing of XML-based Remote Procedure Calls (XML-RPC).

  19. Multimedia Services. Multimedia includes sounds and images; these modules can be used to manipulate sound or image files.

  20. Graphical User Interfaces with Tk. The Tkinter module is one way to build a graphical desktop application. The GTK libraries are also widely used to build richly interactive desktop applications; to make use of them, you'll need to download the pyGTK package.

  21. Internationalization. These packages help you separating your message strings from the rest of your application program. You can then translate your messages and provide language-specific variants of your software.

  22. Program Frameworks. These are modules to help build command-line applications.

  23. Development Tools. These modules are essential to creating polished, high-quality software: they support the creation of usable documents and reliable tests for Python programs.

With the exception of chapter 26, the remaining chapters aren't of general interest to most programmers.

  1. The Python Debugger

  2. The Python Profilers

  3. Python Runtime Services. This chapter describes the sys module, which provides a number of useful objects.

  4. Custom Python Interpreters

  5. Restricted Execution

  6. Importing Modules

  7. Python Language Services

  8. Python compiler package

  9. Abstract Syntax Trees

  10. Miscellaneous Services

  11. SGI IRIX Specific Services

  12. SunOS Specific Services

  13. MS Windows Specific Services

  Published under the terms of the Open Publication License Design by Interspire