Fred Drake | 6659c30 | 1998-03-03 22:02:19 +0000 | [diff] [blame] | 1 | \documentclass{manual} |
Guido van Rossum | 19f1b82 | 1991-11-12 15:41:57 +0000 | [diff] [blame] | 2 | |
Guido van Rossum | 8675115 | 1995-02-28 17:14:32 +0000 | [diff] [blame] | 3 | % NOTE: this file controls which chapters/sections of the library |
| 4 | % manual are actually printed. It is easy to customize your manual |
| 5 | % by commenting out sections that you're not interested in. |
| 6 | |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 7 | \title{Python Library Reference} |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 8 | |
Guido van Rossum | 16cd7f9 | 1994-10-06 10:29:26 +0000 | [diff] [blame] | 9 | \input{boilerplate} |
Guido van Rossum | 83eb962 | 1993-11-23 16:28:45 +0000 | [diff] [blame] | 10 | |
Fred Drake | 7d20ffe | 1998-03-09 16:39:22 +0000 | [diff] [blame] | 11 | \makeindex % tell \index to actually write the |
| 12 | % .idx file |
| 13 | \makemodindex % ... and the module index as well. |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 14 | |
Guido van Rossum | 1230c08 | 1992-01-07 16:40:44 +0000 | [diff] [blame] | 15 | |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 16 | \begin{document} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 17 | |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 18 | \maketitle |
| 19 | |
Fred Drake | 9f86b66 | 1998-07-28 21:55:19 +0000 | [diff] [blame] | 20 | \ifhtml |
| 21 | \chapter*{Front Matter\label{front}} |
| 22 | \fi |
| 23 | |
Guido van Rossum | 16cd7f9 | 1994-10-06 10:29:26 +0000 | [diff] [blame] | 24 | \input{copyright} |
| 25 | |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 26 | \begin{abstract} |
| 27 | |
| 28 | \noindent |
Guido van Rossum | 2ddd978 | 1995-03-30 16:01:33 +0000 | [diff] [blame] | 29 | Python is an extensible, interpreted, object-oriented programming |
| 30 | language. It supports a wide range of applications, from simple text |
| 31 | processing scripts to interactive WWW browsers. |
| 32 | |
Fred Drake | b2c6ef8 | 1997-12-18 15:56:05 +0000 | [diff] [blame] | 33 | While the \emph{Python Reference Manual} describes the exact syntax and |
Guido van Rossum | 2ddd978 | 1995-03-30 16:01:33 +0000 | [diff] [blame] | 34 | semantics of the language, it does not describe the standard library |
| 35 | that is distributed with the language, and which greatly enhances its |
| 36 | immediate usability. This library contains built-in modules (written |
| 37 | in C) that provide access to system functionality such as file I/O |
| 38 | that would otherwise be inaccessible to Python programmers, as well as |
| 39 | modules written in Python that provide standardized solutions for many |
| 40 | problems that occur in everyday programming. Some of these modules |
| 41 | are explicitly designed to encourage and enhance the portability of |
| 42 | Python programs. |
| 43 | |
| 44 | This library reference manual documents Python's standard library, as |
| 45 | well as many optional library modules (which may or may not be |
| 46 | available, depending on whether the underlying platform supports them |
| 47 | and on the configuration choices made at compile time). It also |
| 48 | documents the standard types of the language and its built-in |
| 49 | functions and exceptions, many of which are not or incompletely |
| 50 | documented in the Reference Manual. |
| 51 | |
| 52 | This manual assumes basic knowledge about the Python language. For an |
Fred Drake | b2c6ef8 | 1997-12-18 15:56:05 +0000 | [diff] [blame] | 53 | informal introduction to Python, see the \emph{Python Tutorial}; the |
Fred Drake | b660b63 | 1998-01-16 16:34:34 +0000 | [diff] [blame] | 54 | \emph{Python Reference Manual} remains the highest authority on |
| 55 | syntactic and semantic questions. Finally, the manual entitled |
| 56 | \emph{Extending and Embedding the Python Interpreter} describes how to |
| 57 | add new extensions to Python and how to embed it in other applications. |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 58 | |
| 59 | \end{abstract} |
| 60 | |
Fred Drake | 4d4f9e7 | 1998-01-13 22:25:02 +0000 | [diff] [blame] | 61 | \tableofcontents |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 62 | |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 63 | % Chapter title: |
| 64 | |
| 65 | \input{libintro} % Introduction |
| 66 | |
| 67 | \input{libobjs} % Built-in Types, Exceptions and Functions |
Fred Drake | 64e3b43 | 1998-07-24 13:56:11 +0000 | [diff] [blame] | 68 | \input{libstdtypes} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 69 | \input{libexcs} |
| 70 | \input{libfuncs} |
| 71 | |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 72 | \input{libpython} % Python Services |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 73 | \input{libsys} |
Fred Drake | 64e3b43 | 1998-07-24 13:56:11 +0000 | [diff] [blame] | 74 | \input{libtypes} |
Guido van Rossum | 36764b8 | 1997-08-30 20:02:25 +0000 | [diff] [blame] | 75 | \input{libuserdict} |
Guido van Rossum | 61ed4db | 1996-12-06 21:22:41 +0000 | [diff] [blame] | 76 | \input{liboperator} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 77 | \input{libtraceback} |
Guido van Rossum | d188358 | 1995-02-15 15:53:08 +0000 | [diff] [blame] | 78 | \input{libpickle} |
Fred Drake | 2d75443 | 1998-01-21 04:58:39 +0000 | [diff] [blame] | 79 | \input{libcopyreg} |
Guido van Rossum | d188358 | 1995-02-15 15:53:08 +0000 | [diff] [blame] | 80 | \input{libshelve} |
| 81 | \input{libcopy} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 82 | \input{libmarshal} |
| 83 | \input{libimp} |
Fred Drake | bd40088 | 1998-04-09 11:04:19 +0000 | [diff] [blame] | 84 | %\input{libni} |
Guido van Rossum | ca81470 | 1995-10-11 17:32:29 +0000 | [diff] [blame] | 85 | \input{libparser} |
Fred Drake | b0df567 | 1998-02-18 15:59:13 +0000 | [diff] [blame] | 86 | \input{libsymbol} |
| 87 | \input{libtoken} |
Fred Drake | 14bf341 | 1997-10-06 21:40:48 +0000 | [diff] [blame] | 88 | \input{libkeyword} |
Guido van Rossum | 61c2703 | 1997-07-18 21:08:07 +0000 | [diff] [blame] | 89 | \input{libcode} |
Fred Drake | 00eb96a | 1997-10-06 21:26:03 +0000 | [diff] [blame] | 90 | \input{libpprint} |
Guido van Rossum | eae121e | 1997-11-18 15:11:47 +0000 | [diff] [blame] | 91 | \input{libdis} |
Guido van Rossum | 571391b | 1997-04-03 22:41:49 +0000 | [diff] [blame] | 92 | \input{libsite} |
Guido van Rossum | 36764b8 | 1997-08-30 20:02:25 +0000 | [diff] [blame] | 93 | \input{libuser} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 94 | \input{libbltin} % really __builtin__ |
| 95 | \input{libmain} % really __main__ |
| 96 | |
| 97 | \input{libstrings} % String Services |
| 98 | \input{libstring} |
Guido van Rossum | 9cb6480 | 1997-12-29 20:01:55 +0000 | [diff] [blame] | 99 | \input{libre} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 100 | \input{libregex} |
| 101 | \input{libregsub} |
| 102 | \input{libstruct} |
Fred Drake | 64e3b43 | 1998-07-24 13:56:11 +0000 | [diff] [blame] | 103 | \input{libstringio} |
Fred Drake | 363ab1a | 1998-04-09 14:23:48 +0000 | [diff] [blame] | 104 | %\input{libsoundex} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 105 | |
| 106 | \input{libmisc} % Miscellaneous Services |
| 107 | \input{libmath} |
Guido van Rossum | 84057a3 | 1997-07-17 16:15:18 +0000 | [diff] [blame] | 108 | \input{libcmath} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 109 | \input{libwhrandom} |
Guido van Rossum | 571391b | 1997-04-03 22:41:49 +0000 | [diff] [blame] | 110 | \input{librandom} |
Fred Drake | eac469c | 1998-04-09 04:51:07 +0000 | [diff] [blame] | 111 | %\input{librand} |
Fred Drake | 188a847 | 1998-04-28 18:27:53 +0000 | [diff] [blame] | 112 | \input{libbisect} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 113 | \input{libarray} |
Fred Drake | 4bde97f | 1998-04-04 05:50:12 +0000 | [diff] [blame] | 114 | \input{libfileinput} |
Fred Drake | f8d50bf | 1998-04-28 14:29:27 +0000 | [diff] [blame] | 115 | \input{libcalendar} |
Guido van Rossum | 8668e8e | 1998-06-28 17:55:53 +0000 | [diff] [blame] | 116 | \input{libcmd} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 117 | |
| 118 | \input{liballos} % Generic Operating System Services |
| 119 | \input{libos} |
| 120 | \input{libtime} |
| 121 | \input{libgetopt} |
Guido van Rossum | dc46c7f | 1995-03-01 15:38:16 +0000 | [diff] [blame] | 122 | \input{libtempfile} |
Guido van Rossum | c0fcc44 | 1996-07-30 18:20:01 +0000 | [diff] [blame] | 123 | \input{liberrno} |
Guido van Rossum | b6a8026 | 1997-03-25 22:09:18 +0000 | [diff] [blame] | 124 | \input{libglob} |
Guido van Rossum | e76b7a8 | 1997-04-27 21:25:52 +0000 | [diff] [blame] | 125 | \input{libfnmatch} |
Guido van Rossum | bc12f78 | 1997-11-20 21:04:27 +0000 | [diff] [blame] | 126 | \input{liblocale} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 127 | |
| 128 | \input{libsomeos} % Optional Operating System Services |
| 129 | \input{libsignal} |
| 130 | \input{libsocket} |
| 131 | \input{libselect} |
| 132 | \input{libthread} |
Guido van Rossum | d623d20e7d6 | 1998-07-20 17:34:50 +0000 | [diff] [blame] | 133 | \input{libthreading} |
Barry Warsaw | 17c8e78 | 1997-11-20 19:54:16 +0000 | [diff] [blame] | 134 | \input{libqueue} |
Guido van Rossum | 571391b | 1997-04-03 22:41:49 +0000 | [diff] [blame] | 135 | \input{libanydbm} |
| 136 | \input{libwhichdb} |
Guido van Rossum | dfb4120 | 1997-04-30 19:40:10 +0000 | [diff] [blame] | 137 | \input{libzlib} |
Guido van Rossum | 0fcbe8d | 1997-07-17 16:27:42 +0000 | [diff] [blame] | 138 | \input{libgzip} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 139 | |
| 140 | \input{libunix} % UNIX Specific Services |
| 141 | \input{libposix} |
Fred Drake | 64e3b43 | 1998-07-24 13:56:11 +0000 | [diff] [blame] | 142 | \input{libposixpath} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 143 | \input{libpwd} |
| 144 | \input{libgrp} |
Guido van Rossum | 5c6e373 | 1996-04-10 16:18:20 +0000 | [diff] [blame] | 145 | \input{libcrypt} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 146 | \input{libdbm} |
| 147 | \input{libgdbm} |
| 148 | \input{libtermios} |
| 149 | \input{libfcntl} |
| 150 | \input{libposixfile} |
Guido van Rossum | 3c7b2dc | 1996-12-18 18:37:05 +0000 | [diff] [blame] | 151 | \input{libresource} |
Guido van Rossum | fbe34fa | 1995-10-09 20:49:57 +0000 | [diff] [blame] | 152 | \input{libsyslog} |
Guido van Rossum | 3dd68d3 | 1996-12-31 02:24:54 +0000 | [diff] [blame] | 153 | \input{libstat} |
Fred Drake | 188a847 | 1998-04-28 18:27:53 +0000 | [diff] [blame] | 154 | \input{libpopen2} |
Fred Drake | 4fd1292 | 1997-06-12 16:05:46 +0000 | [diff] [blame] | 155 | \input{libcommands} |
Guido van Rossum | df804f8 | 1995-03-02 12:38:39 +0000 | [diff] [blame] | 156 | |
| 157 | \input{libpdb} % The Python Debugger |
| 158 | |
| 159 | \input{libprofile} % The Python Profiler |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 160 | |
Fred Drake | f44c485 | 1998-08-07 15:58:31 +0000 | [diff] [blame] | 161 | \input{internet} % Internet Protocols |
Guido van Rossum | a12ef94 | 1995-02-27 17:53:25 +0000 | [diff] [blame] | 162 | \input{libcgi} |
Guido van Rossum | cca8d2b | 1995-03-22 15:48:46 +0000 | [diff] [blame] | 163 | \input{liburllib} |
| 164 | \input{libhttplib} |
Guido van Rossum | 817a842 | 1995-02-16 16:28:22 +0000 | [diff] [blame] | 165 | \input{libftplib} |
| 166 | \input{libgopherlib} |
Fred Drake | a468404 | 1998-04-24 20:49:02 +0000 | [diff] [blame] | 167 | \input{libpoplib} |
Fred Drake | 1e0f8bf | 1998-04-11 04:27:07 +0000 | [diff] [blame] | 168 | \input{libimaplib} |
Guido van Rossum | 817a842 | 1995-02-16 16:28:22 +0000 | [diff] [blame] | 169 | \input{libnntplib} |
Guido van Rossum | 8668e8e | 1998-06-28 17:55:53 +0000 | [diff] [blame] | 170 | \input{libsmtplib} |
Guido van Rossum | 817a842 | 1995-02-16 16:28:22 +0000 | [diff] [blame] | 171 | \input{liburlparse} |
Fred Drake | f44c485 | 1998-08-07 15:58:31 +0000 | [diff] [blame] | 172 | \input{libsocksvr} |
| 173 | \input{libbasehttp} |
| 174 | |
| 175 | \input{netdata} |
Guido van Rossum | cca8d2b | 1995-03-22 15:48:46 +0000 | [diff] [blame] | 176 | \input{libsgmllib} |
Fred Drake | e1980ed | 1996-10-09 14:36:54 +0000 | [diff] [blame] | 177 | \input{libhtmllib} |
Guido van Rossum | eae121e | 1997-11-18 15:11:47 +0000 | [diff] [blame] | 178 | \input{libxmllib} |
Fred Drake | 53e84d5 | 1996-10-08 21:54:41 +0000 | [diff] [blame] | 179 | \input{libformatter} |
Guido van Rossum | cca8d2b | 1995-03-22 15:48:46 +0000 | [diff] [blame] | 180 | \input{librfc822} |
| 181 | \input{libmimetools} |
Guido van Rossum | 8668e8e | 1998-06-28 17:55:53 +0000 | [diff] [blame] | 182 | \input{libmultifile} |
Fred Drake | 1aabe5e | 1998-02-19 18:29:18 +0000 | [diff] [blame] | 183 | \input{libbinhex} |
| 184 | \input{libuu} |
Jack Jansen | 4549b13 | 1995-08-29 11:30:24 +0000 | [diff] [blame] | 185 | \input{libbinascii} |
Guido van Rossum | 40006cf | 1996-08-19 22:58:03 +0000 | [diff] [blame] | 186 | \input{libxdrlib} |
Guido van Rossum | b6a8026 | 1997-03-25 22:09:18 +0000 | [diff] [blame] | 187 | \input{libmailcap} |
Fred Drake | b818b46 | 1998-05-19 15:03:45 +0000 | [diff] [blame] | 188 | \input{libmimetypes} |
Guido van Rossum | e76b7a8 | 1997-04-27 21:25:52 +0000 | [diff] [blame] | 189 | \input{libbase64} |
| 190 | \input{libquopri} |
Guido van Rossum | e5bb790 | 1997-06-02 17:35:51 +0000 | [diff] [blame] | 191 | \input{libmailbox} |
Guido van Rossum | fd16ca4 | 1997-07-30 22:05:07 +0000 | [diff] [blame] | 192 | \input{libmimify} |
Guido van Rossum | 817a842 | 1995-02-16 16:28:22 +0000 | [diff] [blame] | 193 | |
Guido van Rossum | 6e308d7 | 1996-10-22 01:11:53 +0000 | [diff] [blame] | 194 | \input{librestricted} |
| 195 | \input{librexec} |
| 196 | \input{libbastion} |
| 197 | |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 198 | \input{libmm} % Multimedia Services |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 199 | \input{libaudioop} |
| 200 | \input{libimageop} |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 201 | \input{libaifc} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 202 | \input{libjpeg} |
| 203 | \input{librgbimg} |
Guido van Rossum | 40006cf | 1996-08-19 22:58:03 +0000 | [diff] [blame] | 204 | \input{libimghdr} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 205 | |
Guido van Rossum | ecde781 | 1995-03-28 13:35:14 +0000 | [diff] [blame] | 206 | \input{libcrypto} % Cryptographic Services |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 207 | \input{libmd5} |
| 208 | \input{libmpz} |
| 209 | \input{librotor} |
| 210 | |
| 211 | %\input{libamoeba} % AMOEBA ONLY |
| 212 | |
Guido van Rossum | e5bb790 | 1997-06-02 17:35:51 +0000 | [diff] [blame] | 213 | %\input{libstdwin} % STDWIN ONLY |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 214 | |
| 215 | \input{libsgi} % SGI IRIX ONLY |
| 216 | \input{libal} |
Sjoerd Mullender | ffd6de1 | 1995-03-28 11:56:52 +0000 | [diff] [blame] | 217 | \input{libcd} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 218 | \input{libfl} |
| 219 | \input{libfm} |
| 220 | \input{libgl} |
| 221 | \input{libimgfile} |
| 222 | %\input{libpanel} |
| 223 | |
| 224 | \input{libsun} % SUNOS ONLY |
Fred Drake | 83c1a39 | 1998-02-19 18:59:48 +0000 | [diff] [blame] | 225 | \input{libsunaudio} |
Guido van Rossum | 6938f06 | 1994-08-01 12:22:53 +0000 | [diff] [blame] | 226 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 227 | \input{libundoc} |
| 228 | |
Fred Drake | f3aa0e0 | 1998-03-17 06:23:13 +0000 | [diff] [blame] | 229 | % |
| 230 | % The ugly "%begin{latexonly}" pseudo-environments are really just to |
| 231 | % keep LaTeX2HTML quiet during the \renewcommand{} macros; they're |
| 232 | % not really valuable. |
| 233 | % |
Fred Drake | 0b1337d | 1998-01-02 02:59:09 +0000 | [diff] [blame] | 234 | |
Fred Drake | f3aa0e0 | 1998-03-17 06:23:13 +0000 | [diff] [blame] | 235 | %begin{latexonly} |
| 236 | \renewcommand{\indexname}{Module Index} |
| 237 | %end{latexonly} |
| 238 | \input{modlib.ind} % Module Index |
| 239 | |
| 240 | %begin{latexonly} |
Fred Drake | 0b1337d | 1998-01-02 02:59:09 +0000 | [diff] [blame] | 241 | \renewcommand{\indexname}{Index} |
Fred Drake | f3aa0e0 | 1998-03-17 06:23:13 +0000 | [diff] [blame] | 242 | %end{latexonly} |
| 243 | \input{lib.ind} % Index |
Guido van Rossum | 515834a | 1991-01-22 11:45:29 +0000 | [diff] [blame] | 244 | |
| 245 | \end{document} |