Lycée   >   Premiere, Terminale, Premiere techno, Terminale techno   >   Mathématiques complémentaires   >   Les listes en Python : création et manipulation

Les listes en Python : création et manipulation

  • Fiche de cours
  • Quiz
  • Profs en ligne
Objectifs
  • 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.
Points clés
  • 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.
Pour bien comprendre
  • 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.

1. Listes en extension et en compréhension
a. Définition 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.
b. Création d'une liste en extension
Méthode

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.

Exemples dans un interpréteur de commandes Python :
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.
c. Création d'une liste par compréhension
Méthode

On peut également créer des listes par une commande du type [valeur boucle]. On parle alors de listes définies par compréhension.

Exemple 1
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.
Exemple 2
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.
Exemple 3
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.
Si l’on veut les carrés des entiers de 1 à 4 :
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.

Exemple 4
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]
d. Longueur d'une liste

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.

Exemples dans un interpréteur de commandes Python :
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.
2. Utilisation des indices des éléments d'une liste
a. Définition d'un indice
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.
Exemple
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.
b. Accéder à un élément repéré par son indice
La commande liste[ ] permet d’accéder facilement à un élément d’une liste grâce à son indice.
Exemples dans un interpréteur de commandes Python
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.
Remarque
On peut obtenir le dernier terme d'une liste ou ceux précédant avec des indices négatifs.
Exemple dans un interpréteur de commandes Python
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'
c. Modifier un élément repéré par son indice

On peut modifier la valeur d’un élément repéré par son indice dans une liste.

Exemple dans un interpréteur de commandes Python
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]
d. Supprimer un élément repéré par son indice

La commande del() permet de supprimer un élément d’une liste grâce à l’indice de cet élément.

Exemple 1
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]
Exemple 2
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]
Exemple 3
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']
e. Parcourir les éléments repérés par leurs indices

On peut parcourir les éléments d’une liste à l’aide d’une boucle parcourant ses indices.

Exemple dans un interpréteur de commandes Python
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.
3. Utilisation des valeurs d'une liste
a. Supprimer un élément repéré par sa valeur
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.
Exemple dans un interpréteur de commandes Python
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.
b. Parcourir les éléments repérés par leur valeur

On peut parcourir les éléments d’une liste à l’aide d’une boucle parcourant ses valeurs.

Exemple dans un interpréteur de commandes Python
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.

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Question 1/5

La médiane de 6 notes est 13. Cela signifie que :

Question 2/5

On a obtenu la série statistique suivante :

Combien vaut la médiane ?

Question 3/5

On a obtenu la série ci-dessous :

Quelle est la médiane de cette série ?

Question 4/5

On a relevé les tailles en cm des élèves d’une classe :

 

Parmi les propositions suivantes, laquelle est vraie ?

Question 5/5

Les notes en français de deux classes littéraires sont données dans le tableau suivant :

Quelle est la note médiane ?

Vous avez obtenu75%de bonnes réponses !

Recevez l'intégralité des bonnes réponses ainsi que les rappels de cours associés :

Votre adresse e-mail sera exclusivement utilisée pour vous envoyer notre newsletter. Vous pourrez vous désinscrire à tout moment, à travers le lien de désinscription présent dans chaque newsletter. Pour en savoir plus sur la gestion de vos données personnelles et pour exercer vos droits, vous pouvez consulter notre charte.

Une erreur s'est produite, veuillez ré-essayer

Consultez votre boite email, vous y trouverez vos résultats de quiz!

Découvrez le soutien scolaire en ligne avec myMaxicours

Le service propose une plateforme de contenus interactifs, ludiques et variés pour les élèves du CP à la Terminale. Nous proposons des univers adaptés aux tranches d'âge afin de favoriser la concentration, encourager et motiver quel que soit le niveau. Nous souhaitons que chacun se sente bien pour apprendre et progresser en toute sérénité ! 

Fiches de cours les plus recherchées

Mathématiques complémentaires

Les listes en Python : application aux probabilités et statistiques

Mathématiques complémentaires

Les listes en Python : application aux suites et aux fonctions

Mathématiques complémentaires

Les listes en Python : applications en géométrie analytique

Mathématiques complémentaires

Les listes en Python : application aux ensembles

Mathématiques complémentaires

La primitive comme solution d'une équation différentielle y'=f - Maths complémentaires

Mathématiques complémentaires

L'équation différentielle y'=ay+b

Mathématiques complémentaires

La dérivée seconde d'une fonction et ses applications

Mathématiques complémentaires

La convexité d'une fonction - spé maths complémentaires

Mathématiques complémentaires

Fonctions réciproques et aspects graphiques

Mathématiques complémentaires

Suites et inégalités