3.1. Jerarquía de tipos estándar

A continuación se muestra una lista de los tipos que están integrados en Python. Los módulos de extensión (escritos en C, Java u otros lenguajes, dependiendo de la implementación) pueden definir tipos adicionales. Las versiones futuras de Python pueden agregar tipos a la jerarquía de tipos (por ejemplo, números racionales, arrays de enteros almacenados eficientemente, etc.).

Algunas de las descripciones de tipo a continuación contienen un párrafo que enumera los «atributos especiales». Estos son atributos que proporcionan acceso a la implementación y no están destinados para uso general. Su definición puede cambiar en el futuro.

En Python tiene varios tipos de datos compuestos estándar disponibles por defecto en el interprete, como los tipos numéricos, secuencias, mapeos y conjuntos usados para agrupar otros valores.

Para el caso de las estructuras de datos se usan variables y constantes las cuales usan operadores para tratar los tipos de datos estándar.

3.1.1. Clasificación

Los tipos de datos compuestos estándar se pueden clasificar como los dos siguientes:

  • Mutable: su contenido (o dicho valor) puede cambiarse en tiempo de ejecución.
  • Inmutable: su contenido (o dicho valor) no puede cambiarse en tiempo de ejecución.

Se pueden resumir los tipos de datos compuestos estándar en la siguiente tabla:

Categoría de tipo Nombre Descripción
Números inmutables int entero
long entero long
float coma flotante
complex complejo
bool booleano
Secuencias inmutables str cadena de caracteres
unicode cadena de caracteres Unicode
tuple tupla
xrange rango inmutable
Secuencias mutables list lista
range rango mutable
Mapeos dict diccionario
Conjuntos mutables set conjunto mutable
Conjuntos inmutables frozenset conjunto inmutable

Otros tipos de datos incorporados, se describen a continuación:

Categoría de tipo Nombre Descripción
Objeto integrado NoneType el objeto None.
Objeto integrado NotImplementedType el objeto NotImplemented.
Objeto integrado ellipsis el objeto Ellipsis.
Objeto integrado file el objeto file.

3.1.2. Objectos Type

Los objectos Type representan los diversos tipos de objetos. Un objecto type es accedido por la función integrada type(). No hay operaciones especiales en los tipos. El módulo estándar types defines los nombres para todos los tipos integrados estándar.

Los tipos son escritos como esto: «<type “int”>».