26. Llista dels índexs¶
Per obtenir i gestionar les dades d’una llista, podeu utilitzar índexs i rodanxes tal i com s’utilitzaven amb les cadenes de text
>>> lista = ['a', 'b', 'c', 'd', 'e']
>>> lista[0]
'a'
>>> lista[3]
'd'
>>> lista[-1]
'e'
Aquest esquema pot ajudar a comprendre la posició dels índexs
[ 'a', 'b', 'c', 'd', 'e' ]
^ ^ ^ ^ ^ ^
0 1 2 3 4 5
-5 -4 -3 -2 -1
Els índexs dels claudàtors quadrats retornen l’element que es troba en aquesta posició a la llista, a partir de la primera posició a l’índex zero.
Rodanons¶
D'altra banda, les llesques retornen una altra llista composta pels elements que es troben entre dos índexs
>>> lista[0:1]
['a']
>>> lista[1:-1]
['b', 'c', 'd']
>>> lista[10:20] # Índices fuera de rango devuelven una lista vacía
[]
>>> lista[:3]
['a', 'b', 'c']
>>> lista[3:]
['d', 'e']
Modificació dels elements¶
A diferència de les cadenes de text, a les llistes si poden modificar els seus elements canviant -los per un altre valor
>>> lista = ['a', 'b', 'c', 'd', 'e']
>>> # Cambia el primer elemento de la lista
>>> lista[0] = 'A'
>>> lista
['A', 'b', 'c', 'd', 'e']
>>> # Cambia los elementos 3º y 4º de la lista por otra lista
>>> lista[2:4] = ['=', 'X']
['A', 'b', '=', 'X', 'e']
Judici `` de ''¶
El judici `` de '' (paraula que prové de DeLete) elimina un element de la llista que es troba en una posició determinada
>>> lista = [1, 2, 3, 4, 5, 6]
>>> del lista[0]
>>> lista
[2, 3, 4, 5, 6]
>>> del lista[2]
>>> lista
[2, 3, 5, 6]
També podeu utilitzar llesques amb el judici "de"
>>> lista = [1, 2, 3, 4, 5, 6]
>>> del lista[1:3]
>>> lista
[1, 4, 5, 6]
Exercicis¶
Escriviu un programa que defineixi una llista amb els primers 10 números primers. Aleshores heu d’imprimir el primer cosí, el tercer i el setè.
Modifiqueu el programa anterior per imprimir la suma dels primers 4 números primers. Heu de programar un bucle que compti de 0 a 3 i utilitzar aquests números com a índexs per recuperar els números principals de la llista.
Escriviu un programa que defineixi una llista amb tres noms. El programa ha d’imprimir la llista, modificar el segon nom i imprimir la llista modificada.
Escriviu un programa que defineixi una llista amb les 6 primeres lletres de l’alfabet en majúscules.
Imprimeix un sublista de "B" a la "D".
Imprimiu un sublista des de "C" fins al final.
Modifica el programa anterior per eliminar les posicions uniformes de la llista i, a continuació, imprimir la llista resultant
['A', 'C', 'E']
Tingueu en compte que a mesura que s’esborren elements de la llista, els elements posteriors canvien la posició.
Escriviu un programa que defineixi una llista amb les 6 primeres lletres de l’alfabet en majúscules. A continuació, es mostra un `` `` `` ha de canviar cadascuna de les lletres pel seu valor més baix gràcies al `` `` `` ``.
El bucle FOR ha de mesurar la longitud de la llista amb la funció len ().
Pista
lista = ['A', ... ] for i in range( ... ): lista[i] = ... print(lista)