blob: 255fcd8db72093d38e1132be8c0a9ec27ed87f96 [file] [log] [blame]
Fred Drake6659c301998-03-03 22:02:19 +00001\documentclass{manual}
Guido van Rossum19f1b821991-11-12 15:41:57 +00002
Guido van Rossum86751151995-02-28 17:14:32 +00003% 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 Rossum6938f061994-08-01 12:22:53 +00007\title{Python Library Reference}
Guido van Rossum515834a1991-01-22 11:45:29 +00008
Guido van Rossum16cd7f91994-10-06 10:29:26 +00009\input{boilerplate}
Guido van Rossum83eb9621993-11-23 16:28:45 +000010
Fred Drake7d20ffe1998-03-09 16:39:22 +000011\makeindex % tell \index to actually write the
12 % .idx file
13\makemodindex % ... and the module index as well.
Guido van Rossum6938f061994-08-01 12:22:53 +000014
Guido van Rossum1230c081992-01-07 16:40:44 +000015
Guido van Rossum515834a1991-01-22 11:45:29 +000016\begin{document}
Guido van Rossum6938f061994-08-01 12:22:53 +000017
Guido van Rossum515834a1991-01-22 11:45:29 +000018\maketitle
19
Fred Drake9f86b661998-07-28 21:55:19 +000020\ifhtml
21\chapter*{Front Matter\label{front}}
22\fi
23
Guido van Rossum16cd7f91994-10-06 10:29:26 +000024\input{copyright}
25
Guido van Rossum515834a1991-01-22 11:45:29 +000026\begin{abstract}
27
28\noindent
Guido van Rossum2ddd9781995-03-30 16:01:33 +000029Python is an extensible, interpreted, object-oriented programming
30language. It supports a wide range of applications, from simple text
31processing scripts to interactive WWW browsers.
32
Fred Drake37f15741999-11-10 16:21:37 +000033While the \citetitle[../ref/ref.html]{Python Reference Manual}
34describes the exact syntax and semantics of the language, it does not
35describe the standard library that is distributed with the language,
36and which greatly enhances its immediate usability. This library
37contains built-in modules (written in C) that provide access to system
38functionality such as file I/O that would otherwise be inaccessible to
39Python programmers, as well as modules written in Python that provide
40standardized solutions for many problems that occur in everyday
41programming. Some of these modules are explicitly designed to
42encourage and enhance the portability of Python programs.
Guido van Rossum2ddd9781995-03-30 16:01:33 +000043
44This library reference manual documents Python's standard library, as
45well as many optional library modules (which may or may not be
46available, depending on whether the underlying platform supports them
47and on the configuration choices made at compile time). It also
48documents the standard types of the language and its built-in
49functions and exceptions, many of which are not or incompletely
50documented in the Reference Manual.
51
52This manual assumes basic knowledge about the Python language. For an
Fred Drake37f15741999-11-10 16:21:37 +000053informal introduction to Python, see the
54\citetitle[../tut/tut.html]{Python Tutorial}; the
55\citetitle[../ref/ref.html]{Python Reference Manual} remains the
56highest authority on syntactic and semantic questions. Finally, the
57manual entitled \citetitle[../ext/ext.html]{Extending and Embedding
58the Python Interpreter} describes how to add new extensions to Python
59and how to embed it in other applications.
Guido van Rossum515834a1991-01-22 11:45:29 +000060
61\end{abstract}
62
Fred Drake4d4f9e71998-01-13 22:25:02 +000063\tableofcontents
Guido van Rossum515834a1991-01-22 11:45:29 +000064
Guido van Rossum6938f061994-08-01 12:22:53 +000065 % Chapter title:
66
67\input{libintro} % Introduction
68
69\input{libobjs} % Built-in Types, Exceptions and Functions
Fred Drake64e3b431998-07-24 13:56:11 +000070\input{libstdtypes}
Guido van Rossum6938f061994-08-01 12:22:53 +000071\input{libexcs}
72\input{libfuncs}
73
Fred Drakeed13b4a2000-08-03 21:18:18 +000074\input{libpython} % Python Runtime Services
Guido van Rossum6938f061994-08-01 12:22:53 +000075\input{libsys}
Fred Drakebdcf91f2000-07-12 04:22:53 +000076\input{libgc}
Fred Drakec19425d2000-06-28 15:07:31 +000077\input{libatexit}
Fred Drake64e3b431998-07-24 13:56:11 +000078\input{libtypes}
Guido van Rossum36764b81997-08-30 20:02:25 +000079\input{libuserdict}
Guido van Rossum61ed4db1996-12-06 21:22:41 +000080\input{liboperator}
Guido van Rossumecde7811995-03-28 13:35:14 +000081\input{libtraceback}
Fred Drakec46864e1999-06-14 19:49:50 +000082\input{liblinecache}
Guido van Rossumd1883581995-02-15 15:53:08 +000083\input{libpickle}
Fred Drake23f414c1998-08-11 15:47:16 +000084\input{libcopyreg} % really copy_reg
Guido van Rossumd1883581995-02-15 15:53:08 +000085\input{libshelve}
86\input{libcopy}
Guido van Rossumecde7811995-03-28 13:35:14 +000087\input{libmarshal}
88\input{libimp}
Fred Drakebd400881998-04-09 11:04:19 +000089%\input{libni}
Guido van Rossum61c27031997-07-18 21:08:07 +000090\input{libcode}
Fred Drakeaf81a501999-06-23 13:34:22 +000091\input{libcodeop}
Fred Drake00eb96a1997-10-06 21:26:03 +000092\input{libpprint}
Fred Drake9d814c61999-01-27 17:20:33 +000093\input{librepr}
Fred Drake26da2841999-06-17 15:12:16 +000094\input{libnew}
Guido van Rossum571391b1997-04-03 22:41:49 +000095\input{libsite}
Guido van Rossum36764b81997-08-30 20:02:25 +000096\input{libuser}
Guido van Rossumecde7811995-03-28 13:35:14 +000097\input{libbltin} % really __builtin__
98\input{libmain} % really __main__
99
100\input{libstrings} % String Services
101\input{libstring}
Guido van Rossum9cb64801997-12-29 20:01:55 +0000102\input{libre}
Guido van Rossumecde7811995-03-28 13:35:14 +0000103\input{libregex}
104\input{libregsub}
105\input{libstruct}
Fred Drake7df4dd71999-06-11 18:36:42 +0000106\input{libfpformat}
Fred Drake64e3b431998-07-24 13:56:11 +0000107\input{libstringio}
Fred Drake98f8a3d2000-04-06 14:25:28 +0000108\input{libcodecs}
Fred Drakefb79ffa2000-06-13 20:51:29 +0000109\input{libunicodedata}
Fred Drake363ab1a1998-04-09 14:23:48 +0000110%\input{libsoundex}
Guido van Rossumecde7811995-03-28 13:35:14 +0000111
112\input{libmisc} % Miscellaneous Services
113\input{libmath}
Guido van Rossum84057a31997-07-17 16:15:18 +0000114\input{libcmath}
Guido van Rossum571391b1997-04-03 22:41:49 +0000115\input{librandom}
Fred Drake76dd2281999-08-23 20:12:11 +0000116\input{libwhrandom}
Fred Drakeeac469c1998-04-09 04:51:07 +0000117%\input{librand}
Fred Drake188a8471998-04-28 18:27:53 +0000118\input{libbisect}
Guido van Rossumecde7811995-03-28 13:35:14 +0000119\input{libarray}
Fred Drakebc866ce1999-01-26 15:47:59 +0000120\input{libcfgparser}
Fred Drake4bde97f1998-04-04 05:50:12 +0000121\input{libfileinput}
Fred Drakef8d50bf1998-04-28 14:29:27 +0000122\input{libcalendar}
Guido van Rossum8668e8e1998-06-28 17:55:53 +0000123\input{libcmd}
Guido van Rossum5e97c9d1998-12-22 05:18:24 +0000124\input{libshlex}
Guido van Rossumecde7811995-03-28 13:35:14 +0000125
126\input{liballos} % Generic Operating System Services
127\input{libos}
Fred Drake12ba7861999-02-02 19:00:37 +0000128\input{libposixpath} % os.path
Fred Drake26da2841999-06-17 15:12:16 +0000129\input{libdircache}
Fred Drake5254a6d1999-04-22 15:01:44 +0000130\input{libstat}
Fred Drake26da2841999-06-17 15:12:16 +0000131\input{libstatcache}
Fred Drake4755e7d1999-06-21 18:25:49 +0000132\input{libstatvfs}
Fred Drakeadf2dbf1999-10-29 17:24:12 +0000133\input{libfilecmp}
Fred Drake143db4b1999-10-26 16:28:04 +0000134%\input{libcmp}
135%\input{libcmpcache}
Guido van Rossumecde7811995-03-28 13:35:14 +0000136\input{libtime}
Fred Drakec4e3bf91999-06-25 18:54:30 +0000137\input{libsched}
Fred Drake99e2c391998-12-22 23:37:46 +0000138\input{libgetpass}
Fred Drake2cd31dc1999-06-21 21:14:30 +0000139\input{libcurses}
Fred Drake6f2a5ef2000-06-28 22:05:44 +0000140\input{libascii} % curses.ascii
Guido van Rossumecde7811995-03-28 13:35:14 +0000141\input{libgetopt}
Guido van Rossumdc46c7f1995-03-01 15:38:16 +0000142\input{libtempfile}
Guido van Rossumc0fcc441996-07-30 18:20:01 +0000143\input{liberrno}
Guido van Rossumb6a80261997-03-25 22:09:18 +0000144\input{libglob}
Guido van Rossume76b7a81997-04-27 21:25:52 +0000145\input{libfnmatch}
Fred Drake449e18f1998-12-28 20:16:58 +0000146\input{libshutil}
Guido van Rossumbc12f781997-11-20 21:04:27 +0000147\input{liblocale}
Fred Drakee4d78181999-06-27 15:02:37 +0000148\input{libmutex}
Guido van Rossumecde7811995-03-28 13:35:14 +0000149
150\input{libsomeos} % Optional Operating System Services
151\input{libsignal}
152\input{libsocket}
153\input{libselect}
154\input{libthread}
Guido van Rossumd623d20e7d61998-07-20 17:34:50 +0000155\input{libthreading}
Barry Warsaw17c8e781997-11-20 19:54:16 +0000156\input{libqueue}
Guido van Rossum571391b1997-04-03 22:41:49 +0000157\input{libanydbm}
Fred Drake666255f1999-04-15 15:11:40 +0000158\input{libdbhash}
Guido van Rossum571391b1997-04-03 22:41:49 +0000159\input{libwhichdb}
Fred Drake4ae52691999-04-19 21:21:28 +0000160\input{libbsddb}
Guido van Rossumdfb41201997-04-30 19:40:10 +0000161\input{libzlib}
Guido van Rossum0fcbe8d1997-07-17 16:27:42 +0000162\input{libgzip}
Fred Drake3c9f9362000-03-31 17:51:10 +0000163\input{libzipfile}
Fred Drake14ea85f2000-07-06 04:47:25 +0000164\input{libreadline}
Fred Drake4755e7d1999-06-21 18:25:49 +0000165\input{librlcompleter}
Guido van Rossumecde7811995-03-28 13:35:14 +0000166
167\input{libunix} % UNIX Specific Services
168\input{libposix}
Guido van Rossumecde7811995-03-28 13:35:14 +0000169\input{libpwd}
170\input{libgrp}
Guido van Rossum5c6e3731996-04-10 16:18:20 +0000171\input{libcrypt}
Fred Drake44a7a7c1999-07-01 20:39:59 +0000172\input{libdl}
Guido van Rossumecde7811995-03-28 13:35:14 +0000173\input{libdbm}
174\input{libgdbm}
175\input{libtermios}
Fred Drake1b2dc901999-06-23 17:29:02 +0000176\input{libtty}
Fred Drakeabc64b71999-06-29 18:12:22 +0000177\input{libpty}
Guido van Rossumecde7811995-03-28 13:35:14 +0000178\input{libfcntl}
Fred Drake4755e7d1999-06-21 18:25:49 +0000179\input{libpipes}
Guido van Rossumecde7811995-03-28 13:35:14 +0000180\input{libposixfile}
Guido van Rossum3c7b2dc1996-12-18 18:37:05 +0000181\input{libresource}
Fred Drakee4d78181999-06-27 15:02:37 +0000182\input{libnis}
Guido van Rossumfbe34fa1995-10-09 20:49:57 +0000183\input{libsyslog}
Fred Drake188a8471998-04-28 18:27:53 +0000184\input{libpopen2}
Fred Drake4fd12921997-06-12 16:05:46 +0000185\input{libcommands}
Guido van Rossumdf804f81995-03-02 12:38:39 +0000186
187\input{libpdb} % The Python Debugger
188
189\input{libprofile} % The Python Profiler
Guido van Rossum6938f061994-08-01 12:22:53 +0000190
Fred Drakef44c4851998-08-07 15:58:31 +0000191\input{internet} % Internet Protocols
Fred Drakee4dbb862000-07-07 03:36:12 +0000192\input{libwebbrowser}
Guido van Rossuma12ef941995-02-27 17:53:25 +0000193\input{libcgi}
Guido van Rossumcca8d2b1995-03-22 15:48:46 +0000194\input{liburllib}
195\input{libhttplib}
Guido van Rossum817a8421995-02-16 16:28:22 +0000196\input{libftplib}
197\input{libgopherlib}
Fred Drakea4684041998-04-24 20:49:02 +0000198\input{libpoplib}
Fred Drake1e0f8bf1998-04-11 04:27:07 +0000199\input{libimaplib}
Guido van Rossum817a8421995-02-16 16:28:22 +0000200\input{libnntplib}
Guido van Rossum8668e8e1998-06-28 17:55:53 +0000201\input{libsmtplib}
Fred Drake658cef01999-03-15 15:44:18 +0000202\input{libtelnetlib}
Guido van Rossum817a8421995-02-16 16:28:22 +0000203\input{liburlparse}
Fred Drakef44c4851998-08-07 15:58:31 +0000204\input{libsocksvr}
205\input{libbasehttp}
Fred Drakec46864e1999-06-14 19:49:50 +0000206\input{libsimplehttp}
207\input{libcgihttp}
Fred Drake15446d32000-08-19 16:55:31 +0000208\input{libcookie}
Fred Drake04520071999-07-02 14:27:03 +0000209\input{libasyncore}
Fred Drakef44c4851998-08-07 15:58:31 +0000210
Fred Drakec4e3bf91999-06-25 18:54:30 +0000211\input{netdata} % Internet Data Handling
Fred Drake53e84d51996-10-08 21:54:41 +0000212\input{libformatter}
Guido van Rossumcca8d2b1995-03-22 15:48:46 +0000213\input{librfc822}
214\input{libmimetools}
Fred Drake28bc7111999-02-12 19:26:09 +0000215\input{libmimewriter}
Guido van Rossum8668e8e1998-06-28 17:55:53 +0000216\input{libmultifile}
Fred Drake1aabe5e1998-02-19 18:29:18 +0000217\input{libbinhex}
218\input{libuu}
Jack Jansen4549b131995-08-29 11:30:24 +0000219\input{libbinascii}
Guido van Rossum40006cf1996-08-19 22:58:03 +0000220\input{libxdrlib}
Guido van Rossumb6a80261997-03-25 22:09:18 +0000221\input{libmailcap}
Fred Drakeb818b461998-05-19 15:03:45 +0000222\input{libmimetypes}
Guido van Rossume76b7a81997-04-27 21:25:52 +0000223\input{libbase64}
224\input{libquopri}
Guido van Rossume5bb7901997-06-02 17:35:51 +0000225\input{libmailbox}
Fred Drake658cef01999-03-15 15:44:18 +0000226\input{libmhlib}
Guido van Rossumfd16ca41997-07-30 22:05:07 +0000227\input{libmimify}
Guido van Rossum5e97c9d1998-12-22 05:18:24 +0000228\input{libnetrc}
Fred Drake3c9f9362000-03-31 17:51:10 +0000229\input{librobotparser}
Guido van Rossum817a8421995-02-16 16:28:22 +0000230
Fred Drakeb5316182000-07-05 02:24:39 +0000231\input{markup} % Structured Markup Processing Tools
232\input{libsgmllib}
233\input{libhtmllib}
234\input{libxmllib}
235\input{libpyexpat}
236
Guido van Rossumecde7811995-03-28 13:35:14 +0000237\input{libmm} % Multimedia Services
Guido van Rossum6938f061994-08-01 12:22:53 +0000238\input{libaudioop}
239\input{libimageop}
Guido van Rossumecde7811995-03-28 13:35:14 +0000240\input{libaifc}
Fred Drakeaf81a501999-06-23 13:34:22 +0000241\input{libsunau}
Fred Drake26da2841999-06-17 15:12:16 +0000242\input{libwave}
Fred Drake707f8e61999-06-22 18:50:06 +0000243\input{libchunk}
Fred Drake4ae52691999-04-19 21:21:28 +0000244\input{libcolorsys}
Guido van Rossum6938f061994-08-01 12:22:53 +0000245\input{librgbimg}
Guido van Rossum40006cf1996-08-19 22:58:03 +0000246\input{libimghdr}
Fred Drake60adb361999-01-05 23:09:12 +0000247\input{libsndhdr}
Guido van Rossum6938f061994-08-01 12:22:53 +0000248
Guido van Rossumecde7811995-03-28 13:35:14 +0000249\input{libcrypto} % Cryptographic Services
Guido van Rossum6938f061994-08-01 12:22:53 +0000250\input{libmd5}
Fred Drake957ac3f1999-04-23 21:52:18 +0000251\input{libsha}
Guido van Rossum6938f061994-08-01 12:22:53 +0000252\input{libmpz}
253\input{librotor}
254
Fred Drakeed13b4a2000-08-03 21:18:18 +0000255\input{librestricted} % Restricted Execution
256\input{librexec}
257\input{libbastion}
258
259\input{language} % Python Language Services
260\input{libparser}
261\input{libsymbol}
262\input{libtoken}
263\input{libkeyword}
264\input{libtokenize}
265\input{libtabnanny}
266\input{libpyclbr}
267\input{libpycompile} % really py_compile
268\input{libcompileall}
269\input{libdis}
270
Guido van Rossum6938f061994-08-01 12:22:53 +0000271%\input{libamoeba} % AMOEBA ONLY
272
Guido van Rossume5bb7901997-06-02 17:35:51 +0000273%\input{libstdwin} % STDWIN ONLY
Guido van Rossum6938f061994-08-01 12:22:53 +0000274
275\input{libsgi} % SGI IRIX ONLY
276\input{libal}
Sjoerd Mullenderffd6de11995-03-28 11:56:52 +0000277\input{libcd}
Guido van Rossum6938f061994-08-01 12:22:53 +0000278\input{libfl}
279\input{libfm}
280\input{libgl}
281\input{libimgfile}
Fred Drake9ea3e361999-01-20 15:55:20 +0000282\input{libjpeg}
Guido van Rossum6938f061994-08-01 12:22:53 +0000283%\input{libpanel}
284
285\input{libsun} % SUNOS ONLY
Fred Drake83c1a391998-02-19 18:59:48 +0000286\input{libsunaudio}
Guido van Rossum6938f061994-08-01 12:22:53 +0000287
Fred Drakec7b72db1999-02-16 19:18:38 +0000288\input{windows} % MS Windows ONLY
289\input{libmsvcrt}
Fred Draked1a65ff2000-06-07 04:07:48 +0000290\input{libwinreg}
Fred Drakec7b72db1999-02-16 19:18:38 +0000291\input{libwinsound}
292
Guido van Rossum612316f1997-03-14 04:12:52 +0000293\input{libundoc}
294
Fred Drakef3aa0e01998-03-17 06:23:13 +0000295%
296% The ugly "%begin{latexonly}" pseudo-environments are really just to
297% keep LaTeX2HTML quiet during the \renewcommand{} macros; they're
298% not really valuable.
299%
Fred Drake0b1337d1998-01-02 02:59:09 +0000300
Fred Drakef3aa0e01998-03-17 06:23:13 +0000301%begin{latexonly}
302\renewcommand{\indexname}{Module Index}
303%end{latexonly}
304\input{modlib.ind} % Module Index
305
306%begin{latexonly}
Fred Drake0b1337d1998-01-02 02:59:09 +0000307\renewcommand{\indexname}{Index}
Fred Drakef3aa0e01998-03-17 06:23:13 +0000308%end{latexonly}
309\input{lib.ind} % Index
Guido van Rossum515834a1991-01-22 11:45:29 +0000310
311\end{document}