1 Acc`es aux éléments d`une liste 2 Construction de listes

publicité
Université de Provence
Licence Math-Info
Première Année
V. Phan Luong
Algorithmique et
Programmation en Python
LISTE
Une liste est une suite d’éléments que l’on peut accéder par l’index. En Python, les
éléments d’une liste peuvent être hétérogènes, c’est-à-dire, de types différents. Les éléments
d’une liste sont encadrés entre deux crochets et séparés par les virgules.
L1 = [1, 2, 3, 4, 5, 6]
L2 = [5, 6, ’a’, ’toto’, [’mars’, 2013], [] ]
Pour connaı̂tre la longueur d’une liste, utiliser la fonction len() :
len(L1) = 6, len(L2) = 6.
Dans la suite, nous considérons l’exécution succesive des exemples donnés sous l’interpreteur Python.
1
Accès aux éléments d’une liste
L1[0] = 1, L1[1] = 2, ..., L1[5] = 6
L2[0] = 5, L2[1] = 6, L2[3] = ’toto’, ..., L2[5] = [] (le sixième élément de L2 est une liste
vide et à l’index 5).
Accès à une plage d’éléments : L1[1 : 4] = [2,3,4], L2[1 : 4] = [6, ’a’, ’toto’] (l’élément
correspondant au dernier index de la plage est exclu du résultat).
L1[2 :] = [3, 4, 5, 6], L1[ :2] = [1, 2]
L1[ :6] et L1[0 : ] sont identiques à L1.
Particularrités de Python : On peut utiliser les nombres négatifs comme index.
Accès au dernier élément : L1[-1] = 6, L2[-1] = []
Accès à une plage d’éléments : L1[-1 :] = [6], L1 = [ :-1] = [1, 2, 3, 4, 5]
L1[-4 :-1] = [3, 4, 5]
2
Construction de listes
Donner tous les éléments : L2 = [5, 6, ’a’, ’toto’, [’mars’, 2013], [] ]
1
Utiliser la fonction range() :
R1 = range(4) résulte R1 = [0, 1, 2, 3]
R2 = range(3, 6) résulte R2 = [3, 4, 5]
Utiliser l’opérateur + (concaténation de listes) :
R3 = R1 + R2 résulte R3 = [0, 1, 2, 3, 3, 4, 5]
Utiliser l’opérateur ∗ (répétition) :
R4 = R1 * 3 résulte R4 = [0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3]
3
Mise à jour d’une liste
Modification d’éléments
R4[len(R1)] = ’a’ résulte R4 = [0, 1, 2, 3, ’a’, 1, 2, 3, 0, 1, 2, 3]
R3[len(R1) : len(R1)+len(R2)] = [’a’, ’b’, ’c’] résulte R3 = [0, 1, 2, 3, ’a’, ’b’, ’c’]
Trier une liste :
R4.sort() change R4 en [0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3, ’a’]
Inverser une liste :
R4.reverse() change R4 en [’a’, 3, 3, 3, 2, 2, 2, 1, 1, 1, 0, 0]
Insertion d’éléments
L1.insert(2, ’trois’) : insérer l’élément ’trois’ à l’index 2 de la liste L1. L1 devient donc
[1, 2, ’trois’, 3, 4, 5, 6]
Ajouter à la fin d’une liste
L1.append(7) change L1 en [1, 2, ’trois’, 3, 4, 5, 6, 7]
L1.insert(8, ’huit’) change L1 en [1, 2, ’trois’, 3, 4, 5, 6, 7, ’huit’]
Suppression des éléments
del L1[2] : supprimer l’élément à l’index 2 de L1, ainsi L1 devient :
[1, 2, 3, 4, 5, 6, 7, ’huit’]
Ensuite, par del L1[-3 :-1], L1 devient [1, 2, 3, 4, 5, ’huit’]
2
Téléchargement