Les listes en Python¶
Les listes permettent de stocker et manipuler plusieurs valeurs dans une seule variable.
Dans la partie intermédiaire, on va voir d'autres choses absolument indispensables quand on code en Python, mais qui sont un peu plus compliquées à bien comprendre. Et le premier de ces concepts un peu plus compliqués, c'est les listes !
En effet, jusqu’ici, nos variables contenaient une seule valeur : un nombre, un texte, un booléen…
Mais parfois, on a besoin de stocker plusieurs valeurs ensemble.
Par exemple :
- La liste des prénoms d’une classe
- Les scores d’un joueur au fil de la partie
- Les courses à acheter
- Les résultats d’un programme répétitif
Pour ça, on va utiliser un nouveau type : les listes.
Créer une liste¶
Une liste se définit avec des crochets [], et chaque élément est séparé par une virgule.
fruits = ["pomme", "banane", "poire"]
ages = [12, 18, 45]
Une liste peut contenir :
- des
int - des
str - des
float - même des listes (mais on verra ça plus tard)
Accéder à un élément¶
Les éléments d’une liste sont numérotés à partir de 0.
| Élément | Indice |
|---|---|
| 1er élément | 0 |
| 2ème élément | 1 |
| 3ème élément | 2 |
| ... | ... |
Ainsi :
fruits = ["pomme", "banane", "poire"]
print(fruits[0]) # affiche "pomme"
print(fruits[1]) # affiche "banane"
print(fruits[2]) # affiche "poire"
Modifier un élément¶
fruits = ["pomme", "banane", "poire"]
fruits[1] = "kiwi"
print(fruits)
Affiche :
['pomme', 'kiwi', 'poire']
Ajouter un élément¶
fruits = ["pomme", "banane"]
fruits.append("fraise")
print(fruits)
Affiche :
['pomme', 'banane', 'fraise']
Quizz¶
nombres = [10, 20, 30, 40]
print(nombres[1])
Qu'affiche ce programme ?
- 10
- *20
- 30
- 40
> L’élément d’indice 1 est le deuxième élément.
Parcourir une liste avec une boucle for¶
Et oui, c’est ici qu’on réutilise la boucle for.
Avant, on faisait :
for i in range(5):
print(i)
Maintenant qu’on a une liste, on peut parcourir directement son contenu :
fruits = ["pomme", "banane", "poire"]
for fruit in fruits:
print(fruit)
Affiche :
pomme
banane
poire
Ici, la variable
fruitprend successivement chaque valeur de la liste.
Taille d’une liste¶
Pour connaître le nombre d’éléments :
fruits = ["pomme", "banane", "poire"]
print(len(fruits)) # affiche 3
Appartenance à une liste¶
Le mot clé in permet de tester l'appartenance à une liste. Par exemple
l = [1,2,3]
print(1 in l)
print(4 in l)
affiche
True
False
Exercice pratique¶
Vous allez écrire un petit programme qui :
- Demande à l’utilisateur combien d’animaux il possède.
- Demande ensuite le nom de chaque animal, et les stocke dans une liste.
-
Affiche ensuite :
-
Le nombre total d’animaux
- Puis chaque animal un par un, avec son numéro dans la liste
Exemple d’exécution :
Combien as-tu d'animaux ? 4
Nom de l'animal n°1 : Rex
Nom de l'animal n°2 : Mochi
Nom de l'animal n°3 : Pompom
Nom de l'animal n°4 : Léon
Tu as 4 animaux :
1) Rex
2) Mochi
3) Pompom
4) Léon
Quelques indices (si besoin)¶
Indice 1
Utilise une boucle for i in range(n) pour demander les noms un à un, et pareil pour les afficher.
Indice 2
Pour afficher le numéro, remarque que la première position est 1, mais i commence à 0.
Bonne chance. Cet exercice est très proche de l’usage réel des listes dans un vrai programme.
En résumé¶
| Concept | Exemple | Description |
|---|---|---|
| Créer une liste | l = [1,2,3] |
Regroupe plusieurs valeurs |
| Accéder | l[0] |
On utilise les indices (à partir de 0) |
| Modifier | l[1] = 42 |
On peut changer les éléments |
| Ajouter | l.append(x) |
Ajoute un élément à la fin |
| Parcourir | for x in l: |
La boucle for permet de traiter chaque valeur |
Les listes sont extrêmement importantes en programmation. On les utilisera partout dans la suite. Prêt pour la suite ?