mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			175 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			175 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
\section{\module{types} ---
 | 
						|
         Names for all built-in types}
 | 
						|
 | 
						|
\declaremodule{standard}{types}
 | 
						|
\modulesynopsis{Names for all built-in types.}
 | 
						|
 | 
						|
 | 
						|
This module defines names for all object types that are used by the
 | 
						|
standard Python interpreter, but not for the types defined by various
 | 
						|
extension modules.  It is safe to use \samp{from types import *} ---
 | 
						|
the module does not export any names besides the ones listed here.
 | 
						|
New names exported by future versions of this module will all end in
 | 
						|
\samp{Type}.
 | 
						|
 | 
						|
Typical use is for functions that do different things depending on
 | 
						|
their argument types, like the following:
 | 
						|
 | 
						|
\begin{verbatim}
 | 
						|
from types import *
 | 
						|
def delete(list, item):
 | 
						|
    if type(item) is IntType:
 | 
						|
       del list[item]
 | 
						|
    else:
 | 
						|
       list.remove(item)
 | 
						|
\end{verbatim}
 | 
						|
 | 
						|
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
 | 
						|
\function{type()}\bifuncindex{type}).
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{BooleanType}
 | 
						|
The type of the \class{bool} values \code{True} and \code{False}; this
 | 
						|
is an alias of the built-in \function{bool()} function.
 | 
						|
\versionadded{2.3}
 | 
						|
\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}{ComplexType}
 | 
						|
The type of complex numbers (e.g. \code{1.0j}).  This is not defined
 | 
						|
if Python was built without complex number support.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{StringType}
 | 
						|
The type of character strings (e.g. \code{'Spam'}).
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{UnicodeType}
 | 
						|
The type of Unicode character strings (e.g. \code{u'Spam'}).  This is
 | 
						|
not defined if Python was built without Unicode support.
 | 
						|
\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 alternate name for \code{DictType}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{FunctionType}
 | 
						|
The type of user-defined functions and lambdas.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{LambdaType}
 | 
						|
An alternate name for \code{FunctionType}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{GeneratorType}
 | 
						|
The type of generator-iterator objects, produced by calling a
 | 
						|
generator function.
 | 
						|
\versionadded{2.2}
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{CodeType}
 | 
						|
The type for code objects such as returned by
 | 
						|
\function{compile()}\bifuncindex{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 alternate name for \code{MethodType}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{BuiltinFunctionType}
 | 
						|
The type of built-in functions like \function{len()} or
 | 
						|
\function{sys.exit()}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{BuiltinMethodType}
 | 
						|
An alternate 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
 | 
						|
\function{xrange()}\bifuncindex{xrange}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{SliceType}
 | 
						|
The type of objects returned by
 | 
						|
\function{slice()}\bifuncindex{slice}.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{EllipsisType}
 | 
						|
The type of \code{Ellipsis}.
 | 
						|
\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}
 | 
						|
 | 
						|
\begin{datadesc}{BufferType}
 | 
						|
The type of buffer objects created by the
 | 
						|
\function{buffer()}\bifuncindex{buffer} function.
 | 
						|
\end{datadesc}
 | 
						|
 | 
						|
\begin{datadesc}{StringTypes}
 | 
						|
A sequence containing \code{StringType} and \code{UnicodeType} used to
 | 
						|
facilitate easier checking for any string object.  Using this is more
 | 
						|
portable than using a sequence of the two string types constructed
 | 
						|
elsewhere since it only contains \code{UnicodeType} if it has been
 | 
						|
built in the running version of Python.  For example:
 | 
						|
\code{isinstance(s, types.StringTypes)}.
 | 
						|
\versionadded{2.2}
 | 
						|
\end{datadesc}
 |