Les listes en Python : création et manipulation
- Fiche de cours
- Quiz et exercices
- Vidéos et podcasts
- Définir une liste en Python par extension et par compréhension.
- Manipuler les éléments d’une liste (ajout, suppression, modification).
- Parcourir les éléments d’une liste.
- Itérer sur les éléments d’une liste.
- Une liste en Python désigne une collection finie et ordonnée d'objets. Elle est la représentation d'un ensemble fini d'objets que l'on distingue par leur ordre d'apparition.
- On crée une liste à l'aide des crochets [ ] et on sépare les objets de cette liste à l'aide d'une virgule. On parle alors de listes définies en extension.
- On peut également créer des listes par une commande du type [valeur boucle]. On parle alors de listes définies par compréhension.
- La méthode len() permet de renvoyer la
longueur d'une liste, c'est-à-dire le nombre
d'éléments qui la composent (il s'agit du
cardinal de la liste).
Une liste vide a pour longueur 0. - Les éléments d'une liste sont repérés à l'aide de leur indice, c’est-à-dire leur position à l’intérieur de la liste. Le premier élément a pour indice 0, le second 1, le dernier len(liste) – 1.
- La commande liste[ ] permet d’accéder facilement à un élément d’une liste grâce à son indice.
- La commande del() permet de supprimer un élément d’une liste grâce à l’indice de cet élément.
- La commande remove() permet de supprimer un élément repéré par sa valeur dans une liste.
- Elle supprime le premier élément de la liste ayant cette valeur.
- Connaitre la notion de variables en Python
- Savoir utiliser des instructions conditionnelles et des boucles
- Connaitre la notion de fonction en Python
Il existe différentes façons de définir
des collections d'objets en Python : tuples,
dictionnaires, listes, sets.
Dans cette fiche, nous nous intéresserons à la
notion de liste.
On crée une liste à l'aide des crochets [ ] et on sépare les objets de cette liste à l'aide d'une virgule. On parle alors de listes définies en extension.
L1 liste1 = [1, 2, 3]
L2 liste2 = ["a","b","c","d"]
L3 liste3 = [ ]
On vient de définir 3 listes dont la dernière (liste3) est une liste vide.
On peut s’assurer qu’il s’agit bien de listes grâce à la méthode type() :
Langage Python | Interprétation |
L1 liste1 = [1, 2,
3] L2 liste2 = ["a","b","c","d"] L3 liste3 = [ ] L4 type(liste1) L5 <class 'list'> L6 type(liste2) L7 <class 'list'> L8 type(liste3) L9 <class 'list'> |
L1, L2, L3 : L’utilisateur saisit
trois collections nommées liste1,
liste2, liste3. L4, L6, L8 : La commande type() demande le type des collections liste1, liste2, liste3. L5, L7, L9 : Pour chacune des collections, le programme répond qu’il s’agit d’une liste. |
On peut également créer des listes par une commande du type [valeur boucle]. On parle alors de listes définies par compréhension.
Langage Python | Interprétation |
L1 liste = [0 for i
in range(5)] L2 liste L3 [0, 0, 0, 0, 0] |
L1 : La commande [0 for i
in range(5)] demande de
créer une liste contenant 5 fois la
valeur 0. L2 et L3 : La liste demandée s’affiche. |
Langage Python | Interprétation |
L1 liste = [i for i
in range(5)] L2 liste L3 [0, 1, 2, 3, 4] |
L1 : La commande [i for i
in range(5)] demande de
créer une liste contenant les
5 premiers entiers naturels. L2 et L3 : La liste demandée s’affiche. |
Langage Python | Interprétation |
L1 liste = [i**2 for i
in range(5)] L2 liste L3 [0, 1, 4, 9, 16] |
L1 : La commande [i**2 for i
in range(5)] demande de
créer une liste contenant les
5 premiers carrés. L2 et L3 : La liste demandée s’affiche. |
L1 liste = [i**2 for i in range(1,5)]
Par rapport à l’exemple précédent, on a précisé à l’intérieur des parenthèses que le rang démarrait à 1.
L2 liste
L3 [1, 4, 9, 16]
Il est possible d’ajouter un test après la boucle pour filtrer les valeurs désirées.
On veut créer une liste de tous les nombres pairs compris entre 0 et 100.
L1 liste = [i for i in range(101) if i%2==0]
Le test if i%2==0 détermine si le reste de la division euclidienne de i par 2 est égal à 0, c'est-à-dire si le nombre i est pair.
L2 liste
L3 [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100]
Pour obtenir la liste des nombres impairs entre 0 et 100 :
L1 liste = [i for i in range(101) if i%2==1]
L2 liste
L3 [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]
La méthode len() permet de renvoyer la
longueur d'une liste, c'est-à-dire le nombre
d'éléments qui la composent (il s'agit du
cardinal de la liste).
Une liste vide a pour longueur 0.
Langage Python | Interprétation |
L1 liste1 = [1, 2,
3] L2 liste2 = ["a","b","c","d"] L3 liste3 = [ ] L4 len(liste1) L5 3 L6 len(liste2) L7 4 L8 len(liste3) L9 0 |
L1, L2, L3 : L’utilisateur saisit
trois listes nommées liste1, liste2,
liste3. L4, L6, L8 : La commande len(liste) demande la longueur de chacune des listes. L5, L7, L9 : Le programme répond que les listes 1, 2 et 3 ont respectivement pour longueur 3, 4 et 0. |
Le premier élément a pour indice 0, le second 1, le dernier len(liste) – 1.
Le dernier élément d’une liste de longueur 3 a pour indice 3 – 1 = 2 puisque le premier élément a pour indice 0.
Langage Python | Interprétation |
L1 liste1 = [1, 2,
3] L2 liste2 = [0] L3 1 L4 liste[1] L5 2 L6 liste[2] L7 3 L8 liste[len(liste1) – 1] L9 3 |
L1 : L’utilisateur saisit une liste
[1, 2, 3]. L2, L4, L6 : La commande liste[0] demande le premier élément, liste[1] le deuxième élément, liste[2] le troisième élément. L3, L5, L7 : Le programme répond respectivement 1, 2 et 3. L8 : La commande liste[len(liste1) – 1] demande le dernier élément. L9 : Le programme répond 3. |
On peut obtenir le dernier terme d'une liste ou ceux précédant avec des indices négatifs.
L1 liste = ['a', 'b', 'c']
L2 liste[–1] # On demande le dernier élément de la liste.
L3 'c'
L4 liste[–2] # On demande l’avant-dernier élément de la liste.
L5 'b'
On peut modifier la valeur d’un élément repéré par son indice dans une liste.
L1 liste = [1, 2, 3]
L2 liste[0] = 5 # On modifie le premier élément en le remplaçant par 5.
L3 liste
L4 [5, 2, 3]
La commande del() permet de supprimer un élément d’une liste grâce à l’indice de cet élément.
Dans un interpréteur de commandes Python
L1 liste = [1, 2, 3]
L2 del(liste[0]) # On supprime le premier élément.
L3 liste
L4 [2, 3]
Dans un interpréteur de commandes Python
L1 liste = [1, 2, 3]
L2 del(liste[–1]) # On supprime le dernier élément.
L3 liste
L4 [1, 2]
Dans un interpréteur de commandes Python
L1 liste=['a',' b', 'c', 'd', 'e']
L2 del(liste[1 : 3]) # On supprime les éléments d’indices 1 à 3 exclu.
L3 liste
L4 ['a', 'd', 'e']
On peut parcourir les éléments d’une liste à l’aide d’une boucle parcourant ses indices.
Langage Python | Interprétation |
L1 def
afficher(list) L2 for i in range(len(list)) L3 print("élément d'indice", i, "valeur", list[i]) L4 liste[1, 2, 3, 4, 5, 6] L5 afficher(list) L6 élément d'indice 0 valeur 1 L7 élément d'indice 1 valeur 2 L8 élément d'indice 2 valeur 3 L9 élément d'indice 3 valeur 4 L10 élément d'indice 4 valeur 5 L11 élément d'indice 5 valeur 6 |
L1 à L3 Définition d’une
fonction L1 : L’utilisateur définit une fonction afficher(list). L2 : Cette fonction comprend une boucle qui parcourt les éléments d’une liste, entre les indices 0 et len(list) exclu. L3 : Pour chaque élément parcouru par la boucle, la fonction affiche son indice et sa valeur. L4 Saisie d’une liste L5 Appel de la fonction afficher(list) L6 à L11 Affichage des éléments parcourus par la boucle La fonction retourne chacun des éléments de la liste et son indice. |
Elle supprime le premier élément de la liste ayant cette valeur.
Langage Python | Interprétation |
L1 liste=[1, 2, 3, 1, 2, 3] L2 liste.remove(2) L3 liste L4 liste[1, 3, 1, 2, 3] L5 liste.remove(2) L6 liste L7 [1, 3, 1, 3] L8 liste.remove(3) L9 liste L10 [1 ,1, 3] |
L1 : L’utilisateur saisit une liste
[1, 2, 3, 1, 2,
3]. L2 : La commande liste.remove(2) supprime le premier élément ayant pour valeur 2. L3 et L4 : La liste demandée s’affiche. L5 : Dans cette nouvelle liste, on utilise à nouveau la commande liste.remove(2). L6 et L7 : La liste demandée s’affiche. Etc. |
On peut parcourir les éléments d’une liste à l’aide d’une boucle parcourant ses valeurs.
Langage Python | Interprétation |
L1 def afficher_element(list) L2 for valeur in list L3 print(valeur) L4 liste[1, 2, 3, 4, 5, 6] L5 afficher_element(list) L6 1 L7 2 L8 3 L9 4 L10 5 L11 6 |
L1 à L3 Définition d’une
fonction L1 : L’utilisateur définit une fonction afficher_element(list). L2 : Cette fonction comprend une boucle qui parcourt les valeurs d’une liste. L3 : La fonction affiche chaque valeur parcourue. L4 Saisie d’une liste L5 Appel de la fonction afficher_element(list) L6 à L11 Affichage des valeurs parcourues par la boucle La fonction retourne chacune des valeurs de la liste. |
Des quiz et exercices pour mieux assimiler sa leçon
La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.
Des exercices variés pour ne pas s’ennuyer
Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !
Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.
Des quiz pour une évaluation en direct
Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.
myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.
Des vidéos et des podcasts pour apprendre différemment
Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.
Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !
Des podcasts pour les révisions
La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.
Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.
Des vidéos de cours pour comprendre en image
Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !