2.1.5 Tipos secuenciales

Hay seis tipos secuenciales: cadenas, cadenas Unicode, listas, tuplas, tampones (buffers) y objetos xrange (rangos dinámicos).

Las constantes literales de cadena se escriben entre comillas simples o dobles: 'xyzzy', "frobozz". Ver en el capítulo 2 del Manual de referencia de Python más detalles sobre las constantes literales de cadena. Las cadenas Unicode se parecen mucho a las cadenas, pero se especifican sintácticamente precediéndolas de un carácter "u": u'abc', u"def". Las listas se construyen con corchetes, separando los elementos por comas: [a, b, c]. Las tuplas se construyen con el operador coma (no entre corchetes), entre paréntesis o no, aunque una lista vacía debe tener los paréntesis: a, b, c o (). Una tupla de un solo elemento debe tener una coma al final: (d,). Los tampones no tienen soporte directo de la sintaxis de Python, sino que se crean llamando a la función buffer(). Los objetos Xrange se parecen a los tampones en que no hay sintaxis específica para crearlos, sino que se crean con la función xrange().

Los tipos secuenciales cuentan con las siguientes operaciones. Las operaciones "in" y "not in" tienen las mismas prioridades que las operaciones de comparación. Las operaciones "+" y "*" tienen la misma prioridad que las operaciones numéricas correspondientes2.4.

Esta tabla enumera las operaciones de secuencias, ordenadas por prioridad ascendente (las operaciones que comparten casilla tienen la misma prioridad). En la tabla, s y t son secuencias del mismo tipo, y n, i y j son enteros:

Operación  Resultado  Notas 
x in s 1 si un elemento de s es igual a x, en caso contrario 0  
x not in s 0 si un elemento de s es igual a x, en caso contrario 1  
s + t la concatenación de s y t  
s * n , n * s n copias de s concatenadas (1)
s[i] el iésimo elemento de s, contando desde 0 (2)
s[i:j] corte de s desde i a j (2), (3)
len(s) longitud de s  
min(s) el menor elemento de s  
max(s) el mayor elemento de s  

Notas:

(1)
Los valores de n menores que 0 se tratan como 0 (lo que produce una secuencia vacía del mismo tipo que s).

(2)
Si i o j son negativos, el índice es relativo al final de la cadena, es decir, se sustituye por len(s) + i o len(s) + j. Se advierte que -0 sigue siendo 0.

(3)
El corte de s desde i hasta j se define como la secuencia de elementos con índice k tal que i <= k < j. Si i o j son mayores que len(s), se debe usar len(s). Si se omite i, se usa 0. Si se omite j, se usa len(s). Si i es mayor o igual que j, el corte resulta vacío.



Footnotes

... correspondientes2.4
No puede ser de otra manera, ya que el analizador es incapaz de determinar el tipo de las operaciones.


Subsections

Ver Sobre este documento... para obtener información sobre sugerencias.