cpython/Doc/libtypes2.tex

124 lines
3.1 KiB
TeX
Raw Normal View History

\section{Standard Module \sectcode{types}}
\label{module-types}
1995-02-27 17:53:25 +00:00
\stmodindex{types}
\setindexsubitem{(in module types)}
1995-03-01 15:38:16 +00:00
1995-02-27 17:53:25 +00:00
This module defines names for all object types that are used by the
standard Python interpreter (but not for the types defined by various
1995-03-01 15:38:16 +00:00
extension modules). It is safe to use ``\code{from types import *}'' ---
1995-02-27 17:53:25 +00:00
the module does not export any other names besides the ones listed
here. New names exported by future versions of this module will
all end in \code{Type}.
Typical use is for functions that do different things depending on
their argument types, like the following:
\begin{verbatim}
1995-02-27 17:53:25 +00:00
from types import *
def delete(list, item):
if type(item) is IntType:
del list[item]
else:
list.remove(item)
\end{verbatim}
%
1995-02-27 17:53:25 +00:00
The module defines the following names:
\begin{datadesc}{NoneType}
The type of \code{None}.
\end{datadesc}
\begin{datadesc}{TypeType}
The type of type objects (such as returned by \code{type()}).
\end{datadesc}
\begin{datadesc}{IntType}
The type of integers (e.g. \code{1}).
\end{datadesc}
\begin{datadesc}{LongType}
The type of long integers (e.g. \code{1L}).
\end{datadesc}
\begin{datadesc}{FloatType}
The type of floating point numbers (e.g. \code{1.0}).
\end{datadesc}
\begin{datadesc}{StringType}
The type of character strings (e.g. \code{'Spam'}).
\end{datadesc}
\begin{datadesc}{TupleType}
The type of tuples (e.g. \code{(1, 2, 3, 'Spam')}).
\end{datadesc}
\begin{datadesc}{ListType}
The type of lists (e.g. \code{[0, 1, 2, 3]}).
\end{datadesc}
\begin{datadesc}{DictType}
The type of dictionaries (e.g. \code{\{'Bacon': 1, 'Ham': 0\}}).
\end{datadesc}
\begin{datadesc}{DictionaryType}
An alternative name for \code{DictType}.
\end{datadesc}
\begin{datadesc}{FunctionType}
The type of user-defined functions and lambdas.
\end{datadesc}
\begin{datadesc}{LambdaType}
An alternative name for \code{FunctionType}.
\end{datadesc}
\begin{datadesc}{CodeType}
The type for code objects such as returned by \code{compile()}.
\end{datadesc}
\begin{datadesc}{ClassType}
The type of user-defined classes.
\end{datadesc}
\begin{datadesc}{InstanceType}
The type of instances of user-defined classes.
\end{datadesc}
\begin{datadesc}{MethodType}
The type of methods of user-defined class instances.
\end{datadesc}
\begin{datadesc}{UnboundMethodType}
An alternative name for \code{MethodType}.
\end{datadesc}
\begin{datadesc}{BuiltinFunctionType}
The type of built-in functions like \code{len} or \code{sys.exit}.
\end{datadesc}
\begin{datadesc}{BuiltinMethodType}
An alternative name for \code{BuiltinFunction}.
\end{datadesc}
\begin{datadesc}{ModuleType}
The type of modules.
\end{datadesc}
\begin{datadesc}{FileType}
The type of open file objects such as \code{sys.stdout}.
\end{datadesc}
\begin{datadesc}{XRangeType}
The type of range objects returned by \code{xrange()}.
\end{datadesc}
\begin{datadesc}{TracebackType}
The type of traceback objects such as found in \code{sys.exc_traceback}.
\end{datadesc}
\begin{datadesc}{FrameType}
The type of frame objects such as found in \code{tb.tb_frame} if
\code{tb} is a traceback object.
\end{datadesc}