Cool Python Modules


The instances of these classes act like numbers, except that they have some optional restrictions:

	  x = Positive(3)
	  x = x - 2  # ok
	  x = x - 4  # not ok --> raises exception.
Mr. Creosote
A lightweight message passing idiom using datagrams.
Python Imaging Library
Gadfly! An SQL Database in Python
Implements lots of standard SQL in Python: not a competitor to Oracle, Sybase or even mySQL, this is great for small database projects that nevertheless need a sophisticated query capability.
mySQL interface
Python interface to the mySQL relational database.
Classes for generating HTML (as from CGI).
Asynchronous Socket Programming
A library for building asynchronous socket clients and servers. A single program can 'simultaneously' communicate with many other clients and servers, using and implementing multiple protocols, all running within a single address space, on a single thread.
Medusa All-Python Web Server
Medusa can run an unlimited number of HTTP and FTP servers within a single address space, without the use of threads. Capable of impressive hit-rates (Linux 486 dx/2 : ~66 HTTP hits/second, in about 1.5 megs of virtual memory), this server can solve your performance problems while handing you the most powerful server-side scripting language available.
Bobo, A Web Development System
An object-request-broker (ORB) that converts HTTP requests to Python object request.
SWIG: Simplified Wrapper and Interface Generator
SWIG turns C/C++ declarations into a working scripting language interface. C functions become commands, C variables become scripting-language variables, and so on. By using ANSI C/C++ syntax, SWIG is easy to use, requires no modification to underlying C code, and is relatively simple to apply to existing applications.
Inter-Language Unification
ILU is a multi-language ORB that's mostly CORBA compatible.
Fnorb is a CORBA 2.0 ORB written in Python (with just the eensiest-teensiest bit of C code for marshalling and parsing). It's lighter-weight than ILU.
A true SGML parser that implements the SGML grove API. The standard Python sgmllib module is not a true SGML parser, in that it doesn't parse a DTD; PyGrove uses James Clark's SP parser and so parses correctly at the expense of a dependency on an external program.
Several Python modules for XML processing are being worked on by the XML sig.
Numeric Python
Numeric Python is a high-power extension to Python, which provides the Python user with a set of tools designed for fast computations on potentially huge data sets. It defines a new type of arrays which are multidimensional (unlike the standard 'array'), and provides a set of array manipulation functions, which make operating on these large arrays "en masse" quite efficient. Additionally, some linear algebra, fast fourier transform and random number generation libraries are included.
Extremely fast set-theoretic set, graph and map data structures. Supports common (intersect, difference, union) set/graph operations as well as some obscure ones (composition, transpose, reachable set, transitive closure).