Une liste est un type de variable qui peut contenir plusieurs valeurs.
Les différentes valeurs sont rangées dans les « cases » de la liste numérotées à partir de 0.
Dans le programme ci-dessous nous déclarons une liste qui contient trois chaînes de caractères et nous les faisons afficher.
Pour définir une liste nous mettons les différents éléments entre crochets et séparés par des virgules.
Pour accéder aux éléments du tableau nous écrivons le nom de la variable suivie de crochets avec le numéro de la case voulue.
Ainsi, maListe[0]
, maListe[1]
et maListe[2]
sont trois variables qui correspondent aux 3 cases du tableau.
En Python l'instruction for
est conçue pour parcourir les listes.
Pour modifier la valeur d'une case d'une liste, on procède comme avec une variable classique, par exemple l'instruction ci-dessous modifie le contenu de la case numérotée 1 et remplace la chaîne de caractères "tata"
par la chaîne de caractères "tutu"
.
Comme une chaîne de caractères, une liste est un objet du langage Python, c'est à dire qu'une liste contient des propriétés et des méthodes qui sont accessibles par la notation pointée.
En particulier il existe une méthode pour ajouter un élément à la fin d'un tableau : la méthode append
. Nous utilisons cette fonctionnalité dans le programme suivant :
Au départ, la variable pairs
reçoit une liste vide représenté par []
.
A chaque tour de boucle, la méthode append
, utilisée en écrivant pairs.append(i);
, permet d'ajouter la valeur de i
à la fin de la liste.
Lorsque la boucle est terminée, la liste contient tous les nombres pairs de 0 à 20.
1. Ecrire un programme qui demande de saisir 5 prénoms, puis une fois la saisie terminée, les affiche dans l'ordre inverse où ils ont étés saisis.
2. Réaliser un programme :
qui permet à un utilisateur d'entrer une série de nombres entiers (pour indiquer la fin de la saisie l'utilisateur entre le nombre 0),
qui affiche le tableau des nombres pairs et le tableau des nombres impairs saisis.
On pourra compléter le « squelette de programme » :
Si on copie la liste liste1
dans liste2
alors toute modification dans une liste se répercutera dans l'autre liste.
Si on veut pouvoir modifier une liste sans modifier l'autre, il suffit d'écrire liste2=liste1[:]
.
Pour connaître le nombre d'éléments d'une liste il faut utiliser la propriété len
de l'objet liste, exactement comme pour connaître le nombre de caractères d'une chaîne.
Dans le programme ci-dessous nous parcourrons la liste de nombres pour doubler toutes les valeurs.
Les éléments de la liste nombres
sont numérotées de 0 à len(nombres)
, nous parcourons tous les éléments de la liste grâce à la boucle dans laquelle i
varie de 0 à len(nombres)
.
Pour chacun des éléments de la liste, nous remplaçons la valeur par son double.
Modifier le programme précédent pour qu'il affiche la somme des nombres rangés dans la liste.
Il existe plusieurs autres méthodes pour manipuler les listes en Python, voir le tableau :
Methode | Description |
del liste[n] | Supprimme l'élément qui est en position n dans la liste. |
liste.remove("a") | Supprime les éléments qui ont la valeur "a" dans la liste. |
liste.reverse() | Inverse complètement l'ordre des éléments de liste. |
liste.count("a") | Compte le nombre de "a" dans la liste. |
liste.index("a") | Repère la première position de "a" dans la liste. |
liste1.extend(liste2) | Les éléments de liste2 se rajoutent à liste1. |
liste[-1] | Donne le dernier élément de la liste. |