Une liste est une séquence d'objets placés entre crochets. Même si ces objets peuvent être de type différent, on se limitera au lycée à des listes de même type.
>>> L = [2, 3, 17] >>> L [2, 3, 17] >>> type(L) <class 'list'>
Les listes
Extrait du document ressource :
Les listes ne font pas l’objet d’un enseignement spécifique en seconde, mais peuvent être utilisées comme objets simples et pratiques.
Une liste est une séquence d'objets placés entre crochets. Même si ces objets peuvent être de type différent, on se limitera au lycée à des listes de même type.
>>> L = [2, 3, 17] >>> L [2, 3, 17] >>> type(L) <class 'list'>
On accède aux éléments d'une liste L
par L[0]
,
L[1]
, L[2]
... Il faut noter que le premier élément
d'une séquence (liste, chaîne de caractères, tuple) a forcément
pour indice 0
.
>>> L = [2, 3, 17] >>> L[0] 2 >>> L[1] 3 >>> L[2] 17
On peut modifier la valeur d'un élément d'une liste par affectation directe :
>>> L = [2, 3, 17] >>> L[0] = 25 >>> L [25, 3, 17]
En Python, il existe d'autres types de « séquence ». Par exemple :
string
, délimitées par
des guillemets ou des apostrophes) ;tuple
que l'on pourrait assimiler à des n-uplets
(les éléments sont séparés par des virgules et délimités
par des parenthèses).On peut accéder aux éléments de ces séquences par leurs indices exactement comme pour les listes (cf. paragraphe ci-dessus). Toutefois, il n'est pas possible de modifier les éléments d'une chaîne ou d'un tuple comme on vient de le faire pour les listes.
C'est la principale différence entre liste et tuple : les listes sont modifiables (en anglais, c'est le mot « mutable » qui est utilisé dans la documentation), les tuples sont non modifiables (immutables, tout comme les chaînes de caractères).
La longueur d'une liste est le nombre d'éléments de cette liste. On l'obtient
avec la fonction len()
. On utilise la même fonction pour obtenir
le nombre d'éléments des autres séquences (chaînes et tuples).
>>> L = [2, 3, 17] >>> len(L) 3
Puisque les indices commencent à 0
, l'indice du dernier
élément de la liste L
est len(L)-1
.
On peut donc accèder au dernier élément par L[len(L)-1]
.
Python offre un raccourci intéressant (utilisation non conseillée dans les programmes officiels) :
L[-1]
donne également le dernier élément,L[-2]
donne l'avant-dernier élément,>>> L = [2, 3, 17] >>> L[-1] 17 >>> L[-2] 3 >>> L[-3] 2
On peut parcourir les éléments d'une liste L
avec
for ... in L
:
On peut également parcourir les éléments de liste L
avec une boucle
for ... in range(len(L))
portant sur les indices des éléments de
cette liste :
Il est aussi possible d'effectuer ce parcours à partir de la fin :
Il est également possible de parcourir en même temps l'indice et la valeur de l'élément correspondant :