\documentclass{manual}

% NOTE: this file controls which chapters/sections of the library
% manual are actually printed.  It is easy to customize your manual
% by commenting out sections that you're not interested in.

\title{Python Library Reference}

\input{boilerplate}

\makeindex                      % tell \index to actually write the
                                % .idx file
\makemodindex                   % ... and the module index as well.

 
\begin{document}

\maketitle

\ifhtml
\chapter*{Front Matter\label{front}}
\fi

\input{copyright}

\begin{abstract}

\noindent
Python is an extensible, interpreted, object-oriented programming
language.  It supports a wide range of applications, from simple text
processing scripts to interactive Web browsers.

While the \citetitle[../ref/ref.html]{Python Reference Manual}
describes the exact syntax and semantics of the language, it does not
describe the standard library that is distributed with the language,
and which greatly enhances its immediate usability.  This library
contains built-in modules (written in C) that provide access to system
functionality such as file I/O that would otherwise be inaccessible to
Python programmers, as well as modules written in Python that provide
standardized solutions for many problems that occur in everyday
programming.  Some of these modules are explicitly designed to
encourage and enhance the portability of Python programs.

This library reference manual documents Python's standard library, as
well as many optional library modules (which may or may not be
available, depending on whether the underlying platform supports them
and on the configuration choices made at compile time).  It also
documents the standard types of the language and its built-in
functions and exceptions, many of which are not or incompletely
documented in the Reference Manual.

This manual assumes basic knowledge about the Python language.  For an
informal introduction to Python, see the
\citetitle[../tut/tut.html]{Python Tutorial}; the
\citetitle[../ref/ref.html]{Python Reference Manual} remains the
highest authority on syntactic and semantic questions.  Finally, the
manual entitled \citetitle[../ext/ext.html]{Extending and Embedding
the Python Interpreter} describes how to add new extensions to Python
and how to embed it in other applications.

\end{abstract}

\tableofcontents

                                % Chapter title:

\input{libintro}                % Introduction


% =============
% BUILT-INs
% =============

\input{libobjs}                 % Built-in Types, Exceptions and Functions
\input{libfuncs}
\input{libstdtypes}
\input{libexcs}
\input{libconsts}



% =============
% BASIC/GENERAL-PURPOSE OBJECTS
% =============

% Strings
\input{libstrings}              % String Services
\input{libstring}
\input{libre}
\input{libreconvert}
\input{libstruct}   % XXX also/better in File Formats?
\input{libdifflib}
\input{libstringio}
\input{libtextwrap}
\input{libcodecs}
\input{libunicodedata}
\input{libstringprep}
\input{libfpformat}


\input{datatypes}		% Data types and structures
\input{libdatetime}
\input{libcalendar}
\input{libcollections}
\input{libheapq}
\input{libbisect}
\input{libarray}
\input{libsets}
\input{libsched}
\input{libmutex}
\input{libqueue}
\input{libweakref}
\input{libuserdict}

% General object services
% XXX intro
\input{libtypes}
\input{libnew}
\input{libcopy}
\input{libpprint}
\input{librepr}


\input{numeric}			% Numeric/Mathematical modules
\input{libmath}
\input{libcmath}
\input{libdecimal}
\input{librandom}

% Functions, Functional, Generators and Iterators
% XXX intro functional
\input{libitertools}
\input{libfunctional}
\input{liboperator}       % from runtime - better with itertools and functional


% =============
% DATA FORMATS
% =============

% Big move - include all the markup and internet formats here

% MIME & email stuff
\input{netdata}                 % Internet Data Handling
\input{email}
\input{libmailcap}
\input{libmailbox}
\input{libmhlib}
\input{libmimetools}
\input{libmimetypes}
\input{libmimewriter}
\input{libmimify}
\input{libmultifile}
\input{librfc822}

% encoding stuff
\input{libbase64}
\input{libbinascii}
\input{libbinhex}
\input{libquopri}
\input{libuu}

\input{markup}                  % Structured Markup Processing Tools
\input{libhtmlparser}
\input{libsgmllib}
\input{libhtmllib}
\input{libpyexpat}
\input{xmldom}
\input{xmldomminidom}
\input{xmldompulldom}
\input{xmlsax}
\input{xmlsaxhandler}
\input{xmlsaxutils}
\input{xmlsaxreader}
% \input{libxmllib}

\input{fileformats}		% Miscellaneous file formats
\input{libcsv}
\input{libcfgparser}
\input{librobotparser}
\input{libnetrc}
\input{libxdrlib}

\input{libcrypto}               % Cryptographic Services
\input{libhashlib}
\input{libhmac}
\input{libmd5}
\input{libsha}

% =============
% FILE & DATABASE STORAGE
% =============

\input{filesys}			% File/directory support
\input{libposixpath}            % os.path
\input{libfileinput}
\input{libstat}
\input{libstatvfs}
\input{libfilecmp}
\input{libtempfile}
\input{libglob}
\input{libfnmatch}
\input{liblinecache}
\input{libshutil}
\input{libdircache}


\input{archiving}		% Data compression and archiving
\input{libzlib}
\input{libgzip}
\input{libbz2}
\input{libzipfile}
\input{libtarfile}


\input{persistence}		% Persistent storage
\input{libpickle}
\input{libcopyreg}              % really copy_reg % from runtime...
\input{libshelve}
\input{libmarshal}
\input{libanydbm}
\input{libwhichdb}
\input{libdbm}
\input{libgdbm}
\input{libdbhash}
\input{libbsddb}
\input{libdumbdbm}


% =============
% OS
% =============


\input{liballos}                % Generic Operating System Services
\input{libos}
\input{libtime}
\input{liboptparse}
\input{libgetopt}
\input{liblogging}
\input{libgetpass}
\input{libcurses}
\input{libascii}                % curses.ascii
\input{libcursespanel}
\input{libplatform}
\input{liberrno}

\input{libsomeos}               % Optional Operating System Services
\input{libselect}
\input{libthread}
\input{libthreading}
\input{libdummythread}
\input{libdummythreading}
\input{libmmap}
\input{libreadline}
\input{librlcompleter}

\input{libunix}                 % UNIX Specific Services
\input{libposix}
\input{libpwd}
\input{libspwd}
\input{libgrp}
\input{libcrypt}
\input{libdl}
\input{libtermios}
\input{libtty}
\input{libpty}
\input{libfcntl}
\input{libpipes}
\input{libposixfile}
\input{libresource}
\input{libnis}
\input{libsyslog}
\input{libcommands}


% =============
% NETWORK & COMMUNICATIONS
% =============

\input{ipc}                     % Interprocess communication/networking
\input{libsubprocess}
\input{libsocket}
\input{libsignal}
\input{libpopen2}
\input{libasyncore}
\input{libasynchat}

\input{internet}                % Internet Protocols
\input{libwebbrowser}
\input{libcgi}
\input{libcgitb}
\input{liburllib}
\input{liburllib2}
\input{libhttplib}
\input{libftplib}
\input{libgopherlib}
\input{libpoplib}
\input{libimaplib}
\input{libnntplib}
\input{libsmtplib}
\input{libsmtpd}
\input{libtelnetlib}
\input{liburlparse}
\input{libsocksvr}
\input{libbasehttp}
\input{libsimplehttp}
\input{libcgihttp}
\input{libcookielib}
\input{libcookie}
\input{libxmlrpclib}
\input{libsimplexmlrpc}
\input{libdocxmlrpc}

% =============
% MULTIMEDIA
% =============

\input{libmm}                   % Multimedia Services
\input{libaudioop}
\input{libimageop}
\input{libaifc}
\input{libsunau}
\input{libwave}
\input{libchunk}
\input{libcolorsys}
\input{librgbimg}
\input{libimghdr}
\input{libsndhdr}
\input{libossaudiodev}

% Tkinter is a chapter in its own right.
\input{tkinter}

%                                % Internationalization
\input{i18n}
\input{libgettext}
\input{liblocale}

% =============
% PROGRAM FRAMEWORKS
% =============
\input{frameworks}
\input{libcmd}
\input{libshlex}


% =============
% DEVELOPMENT TOOLS
% =============
%                                % Software development support
\input{development}
\input{libpydoc}
\input{libdoctest}
\input{libunittest}
\input{libtest}

\input{libpdb}                  % The Python Debugger

\input{libprofile}              % The Python Profiler
\input{libhotshot}              % New profiler
\input{libtimeit}


% =============
% PYTHON ENGINE
% =============

% Runtime services
\input{libpython}               % Python Runtime Services
\input{libsys}
\input{libbltin}                % really __builtin__
\input{libmain}                 % really __main__
\input{libwarnings}
\input{libatexit}
\input{libtraceback}
\input{libfuture}               % really __future__
\input{libgc}
\input{libinspect}
\input{libsite}
\input{libuser}
\input{libfpectl}


\input{custominterp}		% Custom interpreter
\input{libcode}
\input{libcodeop}
\input{librestricted}           % Restricted Execution
\input{librexec}
\input{libbastion}


\input{modules}			% Importing Modules
\input{libimp}
\input{libzipimport}
\input{libpkgutil}
\input{libmodulefinder}


% =============
% PYTHON LANGUAGE & COMPILER
% =============

\input{language}                % Python Language Services
\input{libparser}
\input{libsymbol}
\input{libtoken}
\input{libkeyword}
\input{libtokenize}
\input{libtabnanny}
\input{libpyclbr}
\input{libpycompile}            % really py_compile
\input{libcompileall}
\input{libdis}
\input{libpickletools}
\input{distutils}

\input{compiler}                % compiler package

\input{libmisc}                 % Miscellaneous Services
\input{libformatter}

% =============
% OTHER PLATFORM-SPECIFIC STUFF
% =============

%\input{libamoeba}              % AMOEBA ONLY

%\input{libstdwin}              % STDWIN ONLY

\input{libsgi}                  % SGI IRIX ONLY
\input{libal}
\input{libcd}
\input{libfl}
\input{libfm}
\input{libgl}
\input{libimgfile}
\input{libjpeg}
%\input{libpanel}

\input{libsun}                  % SUNOS ONLY
\input{libsunaudio}

\input{windows}                 % MS Windows ONLY
\input{libmsvcrt}
\input{libwinreg}
\input{libwinsound}

\appendix
\input{libundoc}

%\chapter{Obsolete Modules}
%\input{libcmpcache}
%\input{libcmp}
%\input{libni}
%\input{libregex}
%\input{libregsub}

\chapter{Reporting Bugs}
\input{reportingbugs}

\chapter{History and License}
\input{license}

%
%  The ugly "%begin{latexonly}" pseudo-environments are really just to
%  keep LaTeX2HTML quiet during the \renewcommand{} macros; they're
%  not really valuable.
%

%begin{latexonly}
\renewcommand{\indexname}{Module Index}
%end{latexonly}
\input{modlib.ind}              % Module Index

%begin{latexonly}
\renewcommand{\indexname}{Index}
%end{latexonly}
\input{lib.ind}                 % Index

\end{document}
