Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 1 | \chapter{Undocumented Modules} |
Fred Drake | 710c035 | 1998-02-18 15:47:17 +0000 | [diff] [blame] | 2 | \label{undoc} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 3 | |
| 4 | Here's a quick listing of modules that are currently undocumented, but |
| 5 | that should be documented. Feel free to contribute documentation for |
Fred Drake | 16e81f4 | 1999-02-24 19:57:14 +0000 | [diff] [blame] | 6 | them! (The idea and original contents for this chapter were taken |
| 7 | from a posting by Fredrik Lundh; I have revised some modules' status.) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 8 | |
| 9 | |
Fred Drake | 16e81f4 | 1999-02-24 19:57:14 +0000 | [diff] [blame] | 10 | \section{Frameworks} |
| 11 | |
| 12 | Frameworks tend to be harder to document, but are well worth the |
| 13 | effort spent. |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 14 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 15 | \begin{description} |
| 16 | \item[Tkinter.py] |
| 17 | --- Interface to Tcl/Tk for graphical user interfaces; |
Fred Drake | dac9a4e | 1999-04-16 18:26:22 +0000 | [diff] [blame^] | 18 | Fredrik Lundh is working on this one! See \emph{An Introduction to |
| 19 | Tkinter} at |
| 20 | \url{http://www.pythonware.com/library/tkinter/introduction} for |
| 21 | on-line reference material. |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 22 | |
Fred Drake | 95638f5 | 1998-04-14 04:55:43 +0000 | [diff] [blame] | 23 | \item[Tkdnd.py] |
| 24 | --- Drag-and-drop support for \module{Tkinter}. |
| 25 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 26 | \item[CGIHTTPServer.py] |
| 27 | --- CGI-savvy HTTP Server |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 28 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 29 | \item[SimpleHTTPServer.py] |
| 30 | --- Simple HTTP Server |
Fred Drake | 211f22c | 1998-08-11 18:13:31 +0000 | [diff] [blame] | 31 | |
| 32 | \item[test] |
| 33 | --- Regression testing framework. This is used for the Python |
| 34 | regression test, but is useful for other Python libraries as well. |
| 35 | This is a package rather than a module. |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 36 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 37 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 38 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 39 | \section{Miscellaneous useful utilities} |
| 40 | |
| 41 | Some of these are very old and/or not very robust; marked with ``hmm''. |
| 42 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 43 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 44 | \item[cmp.py] |
| 45 | --- Efficiently compare files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 46 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 47 | \item[cmpcache.py] |
| 48 | --- Efficiently compare files (uses statcache) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 49 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 50 | \item[dircache.py] |
| 51 | --- like os.listdir, but caches results |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 52 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 53 | \item[dircmp.py] |
| 54 | --- class to build directory diff tools on |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 55 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 56 | \item[linecache.py] |
| 57 | --- Cache lines from files (used by pdb) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 58 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 59 | \item[pipes.py] |
| 60 | --- Conversion pipeline templates (hmm) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 61 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 62 | \item[statcache.py] |
| 63 | --- Maintain a cache of file stats |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 64 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 65 | \item[colorsys.py] |
| 66 | --- Conversion between RGB and other color systems |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 67 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 68 | \item[mhlib.py] |
| 69 | --- MH interface |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 70 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 71 | \item[pty.py] |
| 72 | --- Pseudo terminal utilities |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 73 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 74 | \item[tty.py] |
| 75 | --- Terminal utilities |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 76 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 77 | \item[bdb.py] |
| 78 | --- A generic Python debugger base class (used by pdb) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 79 | |
Fred Drake | 6b9ff72 | 1998-04-07 19:09:32 +0000 | [diff] [blame] | 80 | \item[wdb.py] |
| 81 | --- A primitive windowing debugger based on STDWIN. |
| 82 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 83 | \item[ihooks.py] |
| 84 | --- Import hook support (for rexec) |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 85 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 86 | |
Guido van Rossum | 9085822 | 1997-08-15 02:52:46 +0000 | [diff] [blame] | 87 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 88 | \section{Platform specific modules} |
| 89 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 90 | |
Fred Drake | 560bcae | 1999-02-02 18:59:58 +0000 | [diff] [blame] | 91 | These modules are used to implement the \refmodule{os.path} module, and |
| 92 | are not documented beyond this mention. |
| 93 | |
| 94 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 95 | \item[dospath.py] |
Fred Drake | 560bcae | 1999-02-02 18:59:58 +0000 | [diff] [blame] | 96 | --- implementation of \module{os.path} on MS-DOS |
| 97 | |
| 98 | \item[ntpath.py] |
| 99 | --- implementation on \module{os.path} on 32-bit Windows |
| 100 | |
| 101 | \item[posixpath.py] |
| 102 | --- implementation on \module{os.path} on \POSIX{} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 103 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 104 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 105 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 106 | \section{Multimedia} |
| 107 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 108 | \begin{description} |
| 109 | \item[audiodev.py] |
| 110 | --- Plays audio files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 111 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 112 | \item[sunau.py] |
| 113 | --- parse Sun and NeXT audio files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 114 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 115 | \item[sunaudio.py] |
| 116 | --- interpret sun audio headers |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 117 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 118 | \item[toaiff.py] |
| 119 | --- Convert "arbitrary" sound files to AIFF files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 120 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 121 | \item[wave.py] |
| 122 | --- parse WAVE files |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 123 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 124 | |
| 125 | |
| 126 | \section{Oddities} |
| 127 | |
| 128 | These modules are probably also obsolete, or just not very useful. |
| 129 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 130 | \begin{description} |
| 131 | \item[dump.py] |
| 132 | --- Print python code that reconstructs a variable |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 133 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 134 | \item[find.py] |
| 135 | --- find files matching pattern in directory tree |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 136 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 137 | \item[fpformat.py] |
| 138 | --- General floating point formatting functions --- |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 139 | interesting demonstration of how to do this without using the \C{} |
| 140 | library |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 141 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 142 | \item[grep.py] |
| 143 | --- grep |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 144 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 145 | \item[mutex.py] |
| 146 | --- Mutual exclusion --- for use with module sched |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 147 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 148 | \item[packmail.py] |
| 149 | --- create a self-unpacking \UNIX{} shell archive |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 150 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 151 | \item[sched.py] |
| 152 | --- event scheduler class |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 153 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 154 | \item[util.py] |
| 155 | --- useful functions that don't fit elsewhere |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 156 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 157 | \item[tzparse.py] |
| 158 | --- Parse a timezone specification (unfinished) |
| 159 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 160 | |
| 161 | |
| 162 | \section{Obsolete} |
| 163 | |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 164 | These modules are not on the standard module search path; |
| 165 | \indexiii{module}{search}{path} |
| 166 | but are available in the directory \file{lib-old/} installed under |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 167 | \file{\textrm{\$prefix}/lib/python1.5/}. % $ <-- bow to font lock |
| 168 | To use any of these modules, add that directory to \code{sys.path}, |
| 169 | possibly using \envvar{PYTHONPATH}. |
Guido van Rossum | cfaf143 | 1997-07-16 15:48:20 +0000 | [diff] [blame] | 170 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 171 | \begin{description} |
| 172 | \item[newdir.py] |
| 173 | --- New dir() function (the standard dir() is now just as good) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 174 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 175 | \item[addpack.py] |
| 176 | --- standard support for "packages" |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 177 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 178 | \item[codehack.py] |
| 179 | --- Extract function name or line number from a function |
| 180 | code object (these are now accessible as attributes: co.co_name, |
| 181 | func.func_name, co.co_firstlineno). |
| 182 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 183 | \item[fmt.py] |
| 184 | --- text formatting abstractions (too slow) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 185 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 186 | \item[Para.py] |
| 187 | --- helper for fmt.py |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 188 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 189 | \item[lockfile.py] |
| 190 | --- wrapper around FCNTL file locking (use |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 191 | \function{fcntl.lockf()}/\function{flock()} intead) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 192 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 193 | \item[poly.py] |
| 194 | --- Polynomials |
| 195 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 196 | \item[tb.py] |
| 197 | --- Print tracebacks, with a dump of local variables (use |
Fred Drake | e36e4e6 | 1999-01-13 17:11:52 +0000 | [diff] [blame] | 198 | \function{pdb.pm()} or \refmodule{traceback} instead) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 199 | |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 200 | \item[timingmodule] |
| 201 | --- Measure time intervals to high resolution (use |
| 202 | \function{time.clock()} instead). (This is an extension module.) |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 203 | |
Fred Drake | 60adb36 | 1999-01-05 23:09:12 +0000 | [diff] [blame] | 204 | \item[whatsound.py] |
Fred Drake | e36e4e6 | 1999-01-13 17:11:52 +0000 | [diff] [blame] | 205 | --- Recognize sound files; use \refmodule{sndhdr} instead. |
Fred Drake | 60adb36 | 1999-01-05 23:09:12 +0000 | [diff] [blame] | 206 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 207 | \item[zmod.py] |
| 208 | --- Compute properties of mathematical "fields" |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 209 | \end{description} |
Guido van Rossum | 61c2703 | 1997-07-18 21:08:07 +0000 | [diff] [blame] | 210 | |
Fred Drake | 20ca917 | 1998-04-09 14:32:28 +0000 | [diff] [blame] | 211 | The following modules were documented in previous versions of this |
| 212 | manual, but are now considered obsolete: |
| 213 | |
| 214 | \begin{description} |
| 215 | \item[ni] |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 216 | --- Import modules in ``packages.'' Basic package support is now |
| 217 | built in. |
Fred Drake | 20ca917 | 1998-04-09 14:32:28 +0000 | [diff] [blame] | 218 | |
| 219 | \item[rand] |
| 220 | --- Old interface to the random number generator. |
| 221 | |
| 222 | \item[soundex] |
| 223 | --- Algorithm for collapsing names which sound similar to a shared |
| 224 | key. (This is an extension module.) |
| 225 | \end{description} |
| 226 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 227 | |
| 228 | \section{Extension modules} |
| 229 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 230 | \begin{description} |
| 231 | \item[bsddbmodule.c] |
| 232 | --- Interface to the Berkeley DB interface (yet another |
Fred Drake | 0ebd548 | 1999-04-15 16:05:29 +0000 | [diff] [blame] | 233 | dbm clone). See \refmodule{dbhash} for a DBM-style interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 234 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 235 | \item[cursesmodule.c] |
| 236 | --- Curses interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 237 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 238 | \item[dlmodule.c] |
| 239 | --- A highly experimental and dangerous device for calling |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 240 | arbitrary \C{} functions in arbitrary shared libraries. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 241 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 242 | \item[newmodule.c] |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 243 | --- Tommy Burnette's \module{new} module (creates new empty objects of |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 244 | certain kinds) --- dangerous. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 245 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 246 | \item[nismodule.c] |
| 247 | --- NIS (a.k.a. Sun's Yellow Pages) interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 248 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 249 | \item[stdwinmodule.c] |
| 250 | --- Interface to STDWIN (an old, unsupported |
Guido van Rossum | b9ee9c2 | 1997-06-02 17:34:02 +0000 | [diff] [blame] | 251 | platform-independent GUI package). Obsolete; use Tkinter for a |
| 252 | platform-independent GUI instead. |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 253 | \end{description} |
Guido van Rossum | b9ee9c2 | 1997-06-02 17:34:02 +0000 | [diff] [blame] | 254 | |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 255 | The following are SGI specific: |
| 256 | |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 257 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 258 | \item[clmodule.c] |
| 259 | --- Interface to the SGI compression library. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 260 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 261 | \item[svmodule.c] |
| 262 | --- Interface to the ``simple video'' board on SGI Indigo |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 263 | (obsolete hardware). |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 264 | \end{description} |