Algorithmique et programmation · 1re
Listes Python : génération, parcours, comptage
Une liste se construit de trois façons différentes, mais se parcourt toujours de la même : élément après élément.
La démonstration en vidéo
Le vocabulaire à connaître
- liste en extension
- Une liste écrite directement avec toutes ses valeurs, entre crochets : notes = [12, 15, 9, 18].
- liste en compréhension
- Une liste construite par une formule appliquée à chaque élément d'un intervalle : carres = [n * n for n in range(4)].
- indice
- La position d'un élément dans une liste ; en Python, le PREMIER élément a l'indice 0.
Ce qu'on sait
- Une liste se génère de trois façons : en extension (toutes les valeurs écrites d'un coup), par ajouts successifs (append), ou en compréhension (une formule appliquée à chaque terme d'un intervalle).
- Le premier élément d'une liste a l'indice : La position d'un élément dans une liste ; en Python, le PREMIER élément a l'indice 0. 0, le deuxième l'indice 1, et ainsi de suite : l'indice n désigne le (n + 1)-ième élément.
- Parcourir une liste (avec for) traite chaque élément un par un, dans l'ordre où il apparait dans la liste.
- Une fonction de comptage additionne 1 chaque fois qu'un élément vérifie une condition ; une fonction de moyenne divise la somme des éléments par leur nombre.
La méthode, étape par étape
1.Je repère comment la liste est générée : en extension, par ajouts successifs, ou en compréhension.
2.Pour lire un élément précis, je compte les indices à partir de 0.
3.Pour parcourir la liste, je simule la boucle terme après terme, dans l'ordre.
4.Pour une fonction de comptage ou de moyenne, j'applique sa formule aux éléments de la liste donnée en argument.
Une liste se génère en extension, par ajouts successifs, ou en compréhension ; elle se parcourt et s'indexe toujours à partir de 0.
C.Q.F.D.
L'exemple au propre
1.On définit liste = [5, 3, 8], puis liste.append(2), puis liste.pop(0).
2.Après append(2), la liste vaut [5, 3, 8, 2].
3.pop(0) retire l'élément d'indice 0 (le premier, 5) : la liste finale est [3, 8, 2].