Listas¶
Las listas se tratan de un tipo compuesto de dato que puede almacenar distintos valores (llamados ítems o elementos) ordenados entre [ ] y separados con comas:
numeros = [1,2,3,4]
numeros
[1, 2, 3, 4]
Índices y slicing¶
Funcionan de una forma muy similar a las cadenas de caracteres:
datos = [4, "Una cadena", -15, 3.14, "Otra cadena"]
print(datos[0])
print(datos[-1])
print(datos[2:])
4
Otra cadena
[-15, 3.14, 'Otra cadena']
Suma de listas¶
Da como resultado una nueva lista que incluye todos los ítems:
numeros + [5,6,7,8]
[1, 2, 3, 4, 5, 6, 7, 8]
Mutabilidad¶
A diferencia de las cadenas, en las listas sí podemos modificar sus ítems utilizando índices:
pares = [0,2,4,5,8,10]
pares[3] = 6
pares
[0, 2, 4, 6, 8, 10]
Integran funcionalidades internas como el método .append() para añadir un ítem al final de la lista:
pares.append(12)
pares.append(7*2)
pares
[0, 2, 4, 6, 8, 10, 12, 14]
Y una peculiaridad es que también aceptan asignación con slicing para modificar varios ítems en conjunto:
letras = ['a','b','c','d','e','f']
letras[:3]
['a', 'b', 'c']
letras[:3] = ['A','B','C']
letras
['A', 'B', 'C', 'd', 'e', 'f']
Asignar una lista vacía equivale a borrar los ítems de la lista o sublista:
letras[:3] = []
letras
['d', 'e', 'f']
letras = []
letras
[]
La función len() funciona con las listas del mismo modo que en las cadenas:
print(len(letras))
print(len(pares))
0
8
Listas anidadas¶
Podemos manipular fácilmente este tipo de estructuras utilizando múltiples índices, como si nos refieréramos a las filas y columnas de una tabla:
a = [1,2,3]
b = [4,5,6]
c = [7,8,9]
r = [a,b,c]
r
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(r[0]) # Primera sublista
print(r[-1]) # Última sublista
print(r[0][0]) # Primera sublista, y de ella, primer ítem
print(r[1][1]) # Segunda sublista, y de ella, segundo ítem
print(r[2][2]) # Tercera sublista, y de ella, tercer ítem
print(r[-1][-1]) # Última sublista, y de ella, último ítem
[1, 2, 3]
[7, 8, 9]
1
5
9
9
Última edición: 20 de Septiembre de 2018