3.4 types --- Noms pour tous les types intégrés

Ce module définit des noms pour tous les types d'objets qui sont utilisés par l'interpréteur standard de Python, mais pas pour les types définis par divers modules d'extension. On peut sans risque exécuter "from types import *" - le module n'exporte aucun nom en-dehors de ceux listés ici. Les nouveaux noms exportés par des versions futures de ce module se termineront tous par "Type".

On s'en sert typiquement pour les fonctions qui exécutent des actions différentes selon le type de leurs arguments, comme dans l'exemple suivant:

from types import *
def delete(list, item):
    if type(item) is IntType:
       del list[item]
    else:
       list.remove(item)

Le module définit les noms suivants:

NoneType
Le type de None.

TypeType
Le type des objets type (tels que retournés par type()).

IntType
Le type des entiers (par ex. 1).

LongType
Le type des entiers longs (e.g. 1L).

FloatType
Le type des nombres à virgule flottante (par ex. 1.0).

ComplexType
Le type des nombres complexes (par ex. 1.0j).

StringType
Le type des chaînes de caractères (par ex. 'Spam').

UnicodeType
Le type des chaînes de caractères Unicode (par ex. u'Spam').

TupleType
Le type des tuples (par ex. (1, 2, 3, 'Spam')).

ListType
Le type des listes (par ex. [0, 1, 2, 3]).

DictType
Le type des dictionnaires (par ex. {'Bacon': 1, 'Ham': 0}).

DictionaryType
Un autre nom pour DictType.

FunctionType
Le type des fonctions et lambdas définis par l'utilisateur.

LambdaType
Un autre nom pour FunctionType.

CodeType
Le type des objets code tels que retournés par compile().

ClassType
Le type des classes définies par l'utilisateur.

InstanceType
Le type des instances des classes définies par l'utilisateur.

MethodType
Le type des méthodes des instances de classes définies par l'utilisateur.

UnboundMethodType
Un autre nom pour MethodType.

BuiltinFunctionType
Le type des fonctions intégrées comme len() ou sys.exit().

BuiltinMethodType
Un autre nom pour BuiltinFunction.

ModuleType
Le type des modules.

FileType
Le type des objets fichier ouverts, tels que sys.stdout.

XRangeType
Le type des objets xrange retournés par xrange().

SliceType
Le type des objets retournés par slice().

EllipsisType
Le type de Ellipsis.

TracebackType
Le type des objets trace tels que ceux qu'on trouve dans sys.exc_traceback.

FrameType
Le type des objets cadre tels qu'on les trouve dans tb.tb_frametb est un objet trace.

BufferType
Le type des objets buffer créés par la fonction buffer().