- Qu'est ce qu'une liste Python ?
- Accèder aux éléments d'une liste
- Modifier la valeur d'un élément de la liste
- Longueur d'une liste Python
- Parcourir les éléments d'une liste Python
- Ajouter ou supprimer des éléments à la liste
- Liste en compréhension
- Découpage d'une liste ( list slicing)
- Principales méthodes associées à une liste python
- Quiz
1. Qu'est ce qu'une liste Python ?
Une liste Python est une collection ordonnée et modifiable d'objets de données. Contrairement à un tableau, qui peut contenir des objets d'un seul type, une liste peut contenir un mélange d'objets.
Une liste en Python est un type de données faisant partie des collections, ordonnée et modifiable. En Python, les listes sont écrites entre crochets List = [ ...].
Exemple
1 2 3 4 |
#Creating a list myList = ["Python", "Django", "Laravel"] // Displaying the list print(myList) |
2 - Accèder aux éléments d'une liste.
Pour accéder à un élément d'une liste, il suffit d'introduire le nom de la liste suivie de l'index de l'élément concerné entre crochets:
Exemple
1 2 3 |
Imprimer le 2ème élément de la liste: myList = ["Python", "Java", "PHP"] print(myList[1]) # Affiche 'Java' |
3 - Modifier la valeur d'un élément de la liste
Pour modifier la valeur d'un élément spécifique, reportez-vous au numéro d'index:
Exemple (Changer le 3ème élément de la liste)
1 2 3 |
myList = ["Python", "Java", "PHP"] myList[2]="NodeJS" print(myList) #Affiche : ['Python','Java','NodeJS'] |
4 - Longueur d'une liste Python
Pour déterminer le nombre d'éléments d'une liste (ou longueur de la liste), on utilise la méthode len():
Exemple
1 2 3 |
#Afficher le nombre d'éléments de la liste: myList = ["Python", "Django", "PyGame"] print ("La longueur de la liste est" ,len(myList)) #Affiche : La longueur de la liste est 3 |
5 - Parcourir les éléments d'une liste Python
Le lanage Python est doté de la structure for qui permet de parcourir n'importe quel itérable ( liste, chaine de caractères...)
Exemple
1 2 3 4 |
#Imprimer tous les éléments de la liste, un par un: myList = ["Python", "Java", "NodeJS"] for element in myList: print(element) # Affiche tous les éléments de la liste un par un. |
On peut aussi parcourir les éléments de la liste en utilisant les indexs
Exemple
1 2 3 4 5 6 |
#Imprimer tous les éléments de la liste, un par un: myList = ["Javascript", "PHP", "NodeJS"] # getting the lenght of list n = len(myList) for i in range(0 , n): print(myList[i]) # Affiche tous les éléments de la liste un par un. |
6 - Ajouter ou supprimer des éléments à la liste
6.1 - Ajouter un élément à une liste Python
Pour ajouter un élément à la fin d'une liste python, il suffit d'utiliser la méthode append():
Exemple
1 2 3 4 |
#ajouter un élément à la fin de la liste avec la méthode append() : myList = ["Python", "Java", "PHP"] myList.append ("Django") print(myList) #Affiche : ["Python", "Java", "PHP", "Django"] |
Pour ajouter un élément à un index spécifié, il suffit d'utiliser la méthode insert():
Exemple
1 2 3 4 |
#Insérer un élément en deuxième position: myList = ["Python", "Java", "PHP"] myList.insert (1, "PyGame") print (myList) # Affiche : ["Python", "PyGame" , "Java", "PHP"] |
6.2 Retirer un élément d'une liste Python
Il existe plusieurs méthodes pour supprimer des éléments d'une liste:
- remove(): supprime un élément spécifié.
- pop(): supprime un élément en spécifiant son index (ou le dernier élément si aucun index n'est spécifié)
- Le mot clé del: supprime l'élément à l'index spécifié( del permet également de supprimer complètement la liste)
- clear(): vide la liste
Exemple
1 2 3 4 |
#suppression d'un élément spécifié avec la méthode remove() myList = ["Python", "C++", "PHP"] myList.remove ("PHP") print (myList) #Affiche: ["Python", "C++"] |
Exemple
1 2 3 4 |
#Suppression d'un élément d'index spécifié avec la méthode pop() myList = ["Python", "Java", "PHP"] myList.pop(1) print (myList) #Affiche : ["Python", "PHP"] |
Exemple
1 2 3 4 |
#suppression d'élément à un index spécifié avec la méthode del : myList = ["Python", "Java", "PHP"] del myList[2] print (myList) #Affiche : ["Python", "Java"] |
Le mot clé del peut également supprimer complètement la liste:
Exemple
1 2 3 |
myList = ["Python", "Django", "PyGame"] del myList print (myList) #cela causera une erreur car "myList" n'existe plus. |
Exemple
1 2 3 |
myList = ["Python", "Django", "Flask"] myList.clear () print (myList) #cela une liste vide: [] |
7. Liste en compréhension
La compréhension de liste est un moyen élégant et concis pour créer une nouvelle liste à partir d'une liste existante en Python.
Une compréhension de liste consiste en une expression suivie d'une instruction for entre crochets.
Voici un exemple de création d'une liste en compréhension formée des nombres pairs
Exemple
1 2 3 |
list_even = [2*n for n in range(5)] print("Liste des nombre pairs: " , list_even) # affiche: Liste des nombre pairs: [0, 2, 4, 6, 8] |
On peut aussi ajouter une condition à la boucle for, à titre d'exemple si on souhaite obtenir la liste des nombres pairs qui sont multiple de 3:
Exemple
1 2 3 |
list_even_mult_3 = [2*n for n in range(20) if n%3 == 0] print("les nombre pairs multiples de 3: " , list_even_mult_3) # affiche: les nombre pairs multiples de 3: [0, 6, 12, 18, 24, 30, 36] |
8. Découpage d'une liste ( list slicing)
Nous pouvons effectuer un découpage à une plage d'éléments dans une liste en utilisant l'opérateur de découpage :
Exemple
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# List slicing in Python my_list = ['h','e','l','l','o','w','o','r','l', 'd'] # découpage depuis l'index 3 jusqu'au index 6 print(my_list[3:6]) # affiche: ['l', 'o', 'w'] # découpage depuis l'index 4 jusqu'à la fin print(my_list[4:]) # affiche: ['o', 'w', 'o', 'r', 'l', 'd'] # découpage depuis le début jusqu'à l'index 5 non inclus print(my_list[:5]) # affiche: ['h','e','l','l','o'] # découpage du début jusqu'à la fin print(my_list[:])# affiche: ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd'] # extraction du dernier élément print(my_list[-1])# affiche: [d] # extraction de l'élément d'index 4 en comptant du dernier élément print(my_list[-4]) # affiche: o |
9. Principales méthodes associées à une liste python
Python est doté d'un ensemble de méthodes intégrées permettant d'effectuer des opérations sur les listes:
- append(x) : Ajoute un élément x à la fin de la liste.
- clear(): Supprime tous les éléments de la liste, la rendant vide.
- copy(): Renvoie une copie superficielle (shallow copy) de la liste.
- count(x): Renvoie le nombre d'occurrences de l'élément x dans la liste.
- enumerate(): Renvoie un itérable d'index et d'éléments de la liste.
- extend(iterable) : Ajoute les éléments d'un iterable (comme une autre liste) à la fin de la liste.
- filter(function, iterable): Filtre les éléments de la liste en fonction d'une fonction de filtrage et renvoie un nouvel itérable avec les éléments qui satisfont la condition.
- index(x) : Renvoie l'indice de la première occurrence de l'élément x dans la liste.
- insert(i , x) : Insère un élément x à la position i de la liste.
- join(iterable): Utilisée pour joindre les éléments d'une liste en une seule chaîne de caractères, en utilisant un séparateur spécifié.
- len(): Renvoie la longueur (le nombre d'éléments) de la liste.
- map(function, iterable): Applique une fonction à chaque élément de la liste et renvoie un nouvel itérable avec les résultats.
- max(): Renvoie la valeur maximale dans la liste.
- min(): Renvoie la valeur minimale dans la liste.
- pop([i]) : Retire et renvoie l'élément à la position i. Si i n'est pas spécifié, retire et renvoie le dernier élément de la liste.
- remove(x) : Supprime la première occurrence de l'élément x de la liste.
- reverse() : Inverse l'ordre des éléments dans la liste.
- sort(key = None , reverse = False) : Trie les éléments de la liste. Vous pouvez spécifier une fonction de comparaison key et un indicateur reverse pour trier dans l'ordre inverse.
- sum(): Renvoie la somme de tous les éléments de la liste.
10. Quiz
a) liste_vide = []
b) liste_vide = {}
c) liste_vide = None
a) ma_liste[3]
b) ma_liste[2]
c) ma_liste(3)
a) fruits.add("pomme")
b) fruits.append("pomme")
c) fruits.insert("pomme", len(fruits))
a) couleurs.pop(0)
b) couleurs.remove(0)
c) couleurs.pop()
a) nombres.sort()
b) nombres.reverse()
c) nombres.sort(reverse=True)
a) length(animaux)
b) len(animaux)
c) size(animaux)
a) animaux.count("chien")
b) animaux.find("chien")
c) animaux.index("chien")
a) copie = original.copy()
b) copie = list(original)
c) copie = original[:]
a) liste1.append(liste2)
b) liste1.extend(liste2)
c) liste1.merge(liste2)
a) nombres.inverser()
b) nombres.reverse()
c) nombres.sort(reverse=True)
a) fruits.index("orange")
b) fruits.find("orange")
c) fruits.position("orange")
a) fruits.remove("poire")
b) fruits.delete("poire")
c) fruits.delete_all("poire")
a) liste_existante.join(nouvelle_liste)
b) liste_existante.add(nouvelle_liste)
c) liste_existante.extend(nouvelle_liste)
a) ma_liste.clear()
b) ma_liste.delete()
c) ma_liste.empty()
a) nombres = list(range(1, 11))
b) nombres = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
c) nombres = [1, 10]
a) fruits.add("fraise", 2)
b) fruits.insert(2, "fraise")
c) fruits.append("fraise")
a) if "pomme" in fruits:
b) if fruits.contains("pomme"):
c) if fruits.has("pomme"):
a) nombres.pop()
b) nombres.remove(-1)
c) nombres.delete(-1)
a) ma_liste.add([1, 2, 3])
b) ma_liste.extend([1, 2, 3])
c) ma_liste.append([1, 2, 3])
a) lettres.inverser()
b) lettres.reverse()
c) lettres = lettres[::-1]
Solution 1 : a) liste_vide = []
Solution 2 : b) ma_liste[2]
Solution 3 : b) fruits.append("pomme")
Solution 4 : c) couleurs.pop()
Solution 5 : c) nombres.sort(reverse=True)
Solution 6 : b) len(animaux)
Solution 7 : a) animaux.count("chien")
Solution 8 : c) copie = original[:]
Solution 9 : b) liste1.extend(liste2)
Solution 10 : : b) nombres.reverse()
Solution 11 : a) fruits.index("orange")
Solution 12 : a) fruits.remove("poire")
Solution 13 : c) liste_existante.extend(nouvelle_liste)
Solution 14 : a) ma_liste.clear()
Solution 15 : a) nombres = list(range(1, 11))
Solution 16 : b) fruits.insert(2, "fraise")
Solution 17 : a) if "pomme" in fruits:
Solution 18 : a) nombres.pop()
Solution 19 : b) ma_liste.extend([1, 2, 3])
Solution 20 : b) lettres.reverse() et c) lettres = lettres[::-1]
Younes Derfoufi
CRMEF OUJDA
un cours bien expliqué et bien organisé. merci.