SlideShare une entreprise Scribd logo
Cours
Les structures de données
Les Listes -list-
Professeur: ARROU ABDESSELAM
LYCÉE LISSANE EDDINE IBN AL-KHATIB
CENTRE CPGE –LAAYOUNE-
De façon plus générale, les listes permettent de stocker et
classer un grand nombre de données.
En python une liste(tableau dynamique) :
 Permet de manipuler une séquence d'objets modifiable.
 Contient un nombre non fixé d’éléments, de manière ordonnée.
 Peut contenir des éléments de type différents(hétérogènes).S
Définition d'une liste
Création d'une liste :
En Python, on déclare/défini/crée une liste avec les crochets [],
les éléments sont séparés par une virgule , .
Exemple :
Définition d'une liste
Création d'une liste :
Autres méthode de création d'une liste :
Exemple :
Définition d'une liste
Pour accéder aux éléments d'une liste, on utilise les mêmes
méthodes (index ou indice, découpage en tranches ou
Slicing [d : f : pas) que pour accéder aux caractères d'une chaîne.
Les indices peuvent être positive ou négative.
Syntaxe :
nom_liste[indice].
Accès aux éléments d'une liste
Exemple :
Accès aux éléments d'une liste
Technique de Slicing ou Découpage en tranches :
Le Slicing : est un raccourcis syntaxiques qui permettent le
découpage en tranches d’une liste.
On peut accéder à plus qu’un élément avec l’operateur de
sélection [Début : Fin: Pas] (tranche d’indices) .
Accès aux éléments d'une liste
Technique de Slicing ou Découpage en tranches :
Syntaxe :
soit ch est une liste .
Accès aux éléments d'une liste
Ch[i:j]
Extraire la sous-liste de l’élément i (inclus) à l’élément j (exclu) pas par défaut
égal 1
Ch[i:j:k] Extraire la sous-liste de l’élément i (inclus) à l’élément j (exclu) pas égal k
Ch[i:] Extraire la sous-liste depuis l’élément i (inclus) jusqu'à la fin de la liste.
Ch[:j] Extraire la sous-liste de début indice 0 jusqu'à l'indice j (exclu).
Ch[:] Extraire la sous-liste de début jusqu'à la fin de la liste
Technique de Slicing ou Découpage en tranches :
Exemple :
Accès aux éléments d'une liste
Les opérations à appliquer à une liste :
Les opérations sur les listes
+ La concaténation de deux listes
* La duplication d'une liste (Répétition)
in ou not in Test d'appartenance renvoie True ou False
La concaténation :
On peut concaténer deux listes avec l’operateur + (comme
pour les chaines de caractères).
Exemple :
Les opérations sur les listes
La duplication :
On peut dupliquer(multiplier)une listes avec l’operateur *
(nom_liste * n) où n est un entier.
Exemple :
Les opérations sur les listes
Test d'appartenance:
Nous pouvons facilement déterminer si un élément appartient à une liste à
l’aide de l’opérateur in .
Exemple :
NB: Il est également possible d’utiliser l’opérateur "not in" pour vérifier la non
appartenance d’un élément à une liste.
Les opérations sur les listes
Le parcours d’une liste c’est l’accès séquentiel à ses éléments
de début jusqu'à fin de la liste.
Les fonctions range(), len() et la boucle for permettent le
parcours d’une liste d’une manière relativement simple.
Parcours de liste
Exemple 1:
Parcours de liste
Exemple 2:
Parcours de liste
La fonction len() :
On utilise la fonction len() pour obtenir le nombre d'élements d'une liste.
La fonction min() :
On utilise la fonction min() pour obtenir le minimum d'une liste.
La fonction max() :
On utilise la fonction max() pour obtenir le maximum d'une liste.
La fonction sorted() :
On utilise la fonction max() pour obtenir une liste triée.
La fonction del() :
On utilise la fonction del() pour supprimer une liste.
Les fonctions sur les listes
Exemple :
Les fonctions sur les listes
Sous Python, les listes sont des objets, et nous pouvons donc
leur appliquer un certain nombre de méthodes dont les plus
importantes sont : sort, append, reverse, index, remove.etc…
Syntaxe :
Objet.methode(paramètres)
Les méthodes sur les listes
La fonction append() :
Permet d’ajouter un élément à la fin de la liste
La fonction insert() :
Permet d’ajouter un élément dans une position donnée
La fonction reverse() :
Permet d’inverser l'ordre des éléments d’une liste.
La fonction index() :
Permet de retrouver l’index d’un élément dans la liste
La fonction remove() :
Permet de supprimer un élément d’une liste
La fonction clear() :
Permet de vider une liste
Les méthodes sur les listes
Les méthodes d'une liste
1-Ecrire une fonction moyenne(liste_note) qui calcule la moyenne des éléments d'une liste
de notes passée en paramètre.
2-Ecrire une fonction liste_diviseur(N) renvoyant la liste des diviseurs d’un entier positif N.
3-Écrire une fonction chcercher(liste,val) qui prend en paramètres une liste et une valeur
puis retourne une valeur booléenne(True/False) si la valeur val existe dans une liste.
4-Ecrire une fonction note_eleve(liste_note)qui prend en paramètre une liste, puis affiche
le nombre de notes entrées, la note la plus élevée, la note la plus basse, et la moyenne de la
liste.
5-Définir une fonction insertMilieu(valeur,liste) qui prend en paramètre une valeur et une
liste et qui insère la valeur au milieu de la liste puis retourne la liste.
Exercices
On peut utiliser le "découpage en tranches" ou Slicing pour
modifier, ajouter ou supprimer des éléments dans une liste à
l'aide du seul opérateur [début : fin : pas ].
Techniques de Slicing pour modifier une liste
Modification d'un élément ou d'une sous-liste :
Techniques de Slicing pour modifier une liste
Insertion d'un un élément ou d'une sous-liste
Techniques de Slicing pour modifier une liste
Suppression d'un un élément ou d'une sous-liste
Techniques de Slicing pour modifier une liste
On peut définir une liste en décrivant la séquence contenue
dans la liste. CÀD générer des listes d’une manière très concise,
sans avoir à utiliser la structure répétitive pour remplir une
structure de données (Liste, Dictionnaire, Tuple, …) .
Syntaxe sans condition:
liste=[expression for x in Liste]
Syntaxe avec condition:
liste=[expression for x in Liste if condition]
Une liste en mode compréhension
Exemple liste en compréhension sans condition:
Exemple liste en compréhension avec condition:
Une liste en mode compréhension
Quel est ce résultat du script suivant ?
Copie d'une liste
Les types de copie d'un objet :
Copie simple par l'instruction d'affectation.
Copie par l'opérateur de Slicing [].
Copie profond(deepcopy) par le module copy.
Copie d'une liste
Copie par l'instruction d'affectation.
L'affectation de la forme listeB=listeA, ne crée pas une copie de la liste1,
mais les deux listes listeA et listeB pointe vers la même adresse(référence).
NB: la modification ultérieure des éléments de l’une des deux listes affectera
aussi l’autre.
Exemple :
Copie d'une liste
Copie par l'opérateur de Slicing [ ]:
Si l’on souhaite effectuer une copie(physique) d’une liste listeA qu’on puisse
modifier sans affecter listeB, il faut effectuer une affectation de la forme
suivante :
listeB=listeB[:] ou listeB=list(listeA) ou listeB=[i for i in listeA]
Exemple :
Copie d'une liste
Copie par l'opérateur de Slicing [ ]:
Remarque :
l'opérateur de Slicing [:] permet juste de dupliquer les éléments du 1er
niveau de la liste.
Schéma :
Copie d'une liste
Copie par l'opérateur de Slicing [ ]:
Remarque :
l'opérateur de Slicing [:] permet juste de dupliquer les éléments du 1er
niveau de la liste.
Exemple :
Copie d'une liste
Copie profond par le module copy :
Pour résoudre le problème de Slicing on va faire une copie complète avec la
méthode deepcopy du module copy.
Schéma :
Copie d'une liste
Copie profond par le module copy :
Exemple :
Copie d'une liste
Travaux dirigés

Contenu connexe

PPT
COURS_PYTHON_22.ppt
PDF
Introduction à Python - Achraf Kacimi El Hassani
PPTX
Introduction à Python
PPTX
FormationPython2019.pptx
PDF
Qu'est-ce que la blockchain ?
PDF
Rapport de projet de fin d'année
PDF
algorithme tronc commun lycée
PPTX
Conception et réalisation d’une application web (1).pptx
COURS_PYTHON_22.ppt
Introduction à Python - Achraf Kacimi El Hassani
Introduction à Python
FormationPython2019.pptx
Qu'est-ce que la blockchain ?
Rapport de projet de fin d'année
algorithme tronc commun lycée
Conception et réalisation d’une application web (1).pptx

Tendances (20)

PDF
Cours python avancé
PDF
Chap5 La manipulation des iterables en python
PPTX
Chapitre1: Langage Python
PDF
Python avancé : Interface graphique et programmation évènementielle
PPTX
pile file.pptx
PDF
Chap4 Récursivité en python
PPTX
Formation python
PPTX
L’algorithme 1.pptx
PDF
Chapitre 2 complexité
PDF
Set methods in python
PDF
Atelier Python 2eme partie par Achraf Kacimi El Hassani
PDF
Chap7 simulation numérique
PDF
Chap1V2019: Cours en C++
PDF
Chap1 Introduction à python
PDF
8 python data structure-1
PDF
Python avancé : Lecture et écriture de fichiers
PPTX
Formation python 3
PDF
Python list
PDF
Chapitre 4 récursivité
PDF
Polymorphisme, interface et classe abstraite
Cours python avancé
Chap5 La manipulation des iterables en python
Chapitre1: Langage Python
Python avancé : Interface graphique et programmation évènementielle
pile file.pptx
Chap4 Récursivité en python
Formation python
L’algorithme 1.pptx
Chapitre 2 complexité
Set methods in python
Atelier Python 2eme partie par Achraf Kacimi El Hassani
Chap7 simulation numérique
Chap1V2019: Cours en C++
Chap1 Introduction à python
8 python data structure-1
Python avancé : Lecture et écriture de fichiers
Formation python 3
Python list
Chapitre 4 récursivité
Polymorphisme, interface et classe abstraite
Publicité

Similaire à Les listes en Python (20)

PDF
Un même algorithme peut être écrit python
PDF
Cours Pratique en PYTHON - Tableaux et conteneur - Python1.pdf
PDF
5- understandinggJava_Collections_v4.pdf
PPTX
Theme 9
PPTX
Java collection
PDF
Structures donneenew
PDF
Structures donnee
PDF
Cours les Listes doublement chainées Prof. KHALIFA MANSOURI
PPTX
Chapitre 2 : Les Listes chainées en Algo et C
PPSX
atelier_de_prog2_v4 _classroom_programmation.ppsx
PDF
cours TRI selection insertion bublle sort
PDF
Cours_Listes .pdf
PPTX
Structure des données complexes . pptx .
PPTX
Theme 9(bis)
PDF
09 visual basic .net - exercice - liste chainee
PDF
cour informatique niveau3 programmation en Python.pdf
PDF
Chapitre 3 structures séquentielles
PDF
477d1e_e8372c8ed9114ac38eef1e80b654c67e_241008_201854.pdf
PDF
Algorithme et Structures de Donees 2-Structures Linéaires&NonLimeaire.pdf
Un même algorithme peut être écrit python
Cours Pratique en PYTHON - Tableaux et conteneur - Python1.pdf
5- understandinggJava_Collections_v4.pdf
Theme 9
Java collection
Structures donneenew
Structures donnee
Cours les Listes doublement chainées Prof. KHALIFA MANSOURI
Chapitre 2 : Les Listes chainées en Algo et C
atelier_de_prog2_v4 _classroom_programmation.ppsx
cours TRI selection insertion bublle sort
Cours_Listes .pdf
Structure des données complexes . pptx .
Theme 9(bis)
09 visual basic .net - exercice - liste chainee
cour informatique niveau3 programmation en Python.pdf
Chapitre 3 structures séquentielles
477d1e_e8372c8ed9114ac38eef1e80b654c67e_241008_201854.pdf
Algorithme et Structures de Donees 2-Structures Linéaires&NonLimeaire.pdf
Publicité

Dernier (20)

PPT
les eaux naturelles qualité des eaux de surface
PPTX
Leçon inaugurale2.ministere. enseignant.
PDF
CLASE 5 comparatifs en gfrnacaise clase 2
PDF
Leadership,_Pitch_et_Marketing_–_Préparer_son_accès_au_marché.pdf
PPTX
Presentation_carte_arduino_uno_1_Entree_Sortie_numerique.pptx
PPTX
plus que ´parfait--.-.-.-..-.--.-..-.-.-.-.
PPTX
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PDF
CLASE 2 TRAIN voacublaire en rancaise.pdf
PPTX
Devenir Inspecteur HSE _ Chp1_ L1....pptx
PPTX
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
PPTX
le subjonctif présent, Conjugaison français
PDF
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
PDF
Il y a et les lieux de la ville (négation avec les indéfinis)
PPTX
Présentation Projet Entreprise Minimaliste Moderne Sobre Blanc Noir.pptx
PDF
🎓 Le Secret des Profs Captivants - 💡 3.1. Anatomie de la respiration — VOIX, ...
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
PPTX
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPT
calcul---électrique--et--chutes de tension.ppt
les eaux naturelles qualité des eaux de surface
Leçon inaugurale2.ministere. enseignant.
CLASE 5 comparatifs en gfrnacaise clase 2
Leadership,_Pitch_et_Marketing_–_Préparer_son_accès_au_marché.pdf
Presentation_carte_arduino_uno_1_Entree_Sortie_numerique.pptx
plus que ´parfait--.-.-.-..-.--.-..-.-.-.-.
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
CLASE 2 TRAIN voacublaire en rancaise.pdf
Devenir Inspecteur HSE _ Chp1_ L1....pptx
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
le subjonctif présent, Conjugaison français
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
Il y a et les lieux de la ville (négation avec les indéfinis)
Présentation Projet Entreprise Minimaliste Moderne Sobre Blanc Noir.pptx
🎓 Le Secret des Profs Captivants - 💡 3.1. Anatomie de la respiration — VOIX, ...
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
calcul---électrique--et--chutes de tension.ppt

Les listes en Python

  • 1. Cours Les structures de données Les Listes -list- Professeur: ARROU ABDESSELAM LYCÉE LISSANE EDDINE IBN AL-KHATIB CENTRE CPGE –LAAYOUNE-
  • 2. De façon plus générale, les listes permettent de stocker et classer un grand nombre de données. En python une liste(tableau dynamique) :  Permet de manipuler une séquence d'objets modifiable.  Contient un nombre non fixé d’éléments, de manière ordonnée.  Peut contenir des éléments de type différents(hétérogènes).S Définition d'une liste
  • 3. Création d'une liste : En Python, on déclare/défini/crée une liste avec les crochets [], les éléments sont séparés par une virgule , . Exemple : Définition d'une liste
  • 4. Création d'une liste : Autres méthode de création d'une liste : Exemple : Définition d'une liste
  • 5. Pour accéder aux éléments d'une liste, on utilise les mêmes méthodes (index ou indice, découpage en tranches ou Slicing [d : f : pas) que pour accéder aux caractères d'une chaîne. Les indices peuvent être positive ou négative. Syntaxe : nom_liste[indice]. Accès aux éléments d'une liste
  • 6. Exemple : Accès aux éléments d'une liste
  • 7. Technique de Slicing ou Découpage en tranches : Le Slicing : est un raccourcis syntaxiques qui permettent le découpage en tranches d’une liste. On peut accéder à plus qu’un élément avec l’operateur de sélection [Début : Fin: Pas] (tranche d’indices) . Accès aux éléments d'une liste
  • 8. Technique de Slicing ou Découpage en tranches : Syntaxe : soit ch est une liste . Accès aux éléments d'une liste Ch[i:j] Extraire la sous-liste de l’élément i (inclus) à l’élément j (exclu) pas par défaut égal 1 Ch[i:j:k] Extraire la sous-liste de l’élément i (inclus) à l’élément j (exclu) pas égal k Ch[i:] Extraire la sous-liste depuis l’élément i (inclus) jusqu'à la fin de la liste. Ch[:j] Extraire la sous-liste de début indice 0 jusqu'à l'indice j (exclu). Ch[:] Extraire la sous-liste de début jusqu'à la fin de la liste
  • 9. Technique de Slicing ou Découpage en tranches : Exemple : Accès aux éléments d'une liste
  • 10. Les opérations à appliquer à une liste : Les opérations sur les listes + La concaténation de deux listes * La duplication d'une liste (Répétition) in ou not in Test d'appartenance renvoie True ou False
  • 11. La concaténation : On peut concaténer deux listes avec l’operateur + (comme pour les chaines de caractères). Exemple : Les opérations sur les listes
  • 12. La duplication : On peut dupliquer(multiplier)une listes avec l’operateur * (nom_liste * n) où n est un entier. Exemple : Les opérations sur les listes
  • 13. Test d'appartenance: Nous pouvons facilement déterminer si un élément appartient à une liste à l’aide de l’opérateur in . Exemple : NB: Il est également possible d’utiliser l’opérateur "not in" pour vérifier la non appartenance d’un élément à une liste. Les opérations sur les listes
  • 14. Le parcours d’une liste c’est l’accès séquentiel à ses éléments de début jusqu'à fin de la liste. Les fonctions range(), len() et la boucle for permettent le parcours d’une liste d’une manière relativement simple. Parcours de liste
  • 17. La fonction len() : On utilise la fonction len() pour obtenir le nombre d'élements d'une liste. La fonction min() : On utilise la fonction min() pour obtenir le minimum d'une liste. La fonction max() : On utilise la fonction max() pour obtenir le maximum d'une liste. La fonction sorted() : On utilise la fonction max() pour obtenir une liste triée. La fonction del() : On utilise la fonction del() pour supprimer une liste. Les fonctions sur les listes
  • 18. Exemple : Les fonctions sur les listes
  • 19. Sous Python, les listes sont des objets, et nous pouvons donc leur appliquer un certain nombre de méthodes dont les plus importantes sont : sort, append, reverse, index, remove.etc… Syntaxe : Objet.methode(paramètres) Les méthodes sur les listes
  • 20. La fonction append() : Permet d’ajouter un élément à la fin de la liste La fonction insert() : Permet d’ajouter un élément dans une position donnée La fonction reverse() : Permet d’inverser l'ordre des éléments d’une liste. La fonction index() : Permet de retrouver l’index d’un élément dans la liste La fonction remove() : Permet de supprimer un élément d’une liste La fonction clear() : Permet de vider une liste Les méthodes sur les listes
  • 22. 1-Ecrire une fonction moyenne(liste_note) qui calcule la moyenne des éléments d'une liste de notes passée en paramètre. 2-Ecrire une fonction liste_diviseur(N) renvoyant la liste des diviseurs d’un entier positif N. 3-Écrire une fonction chcercher(liste,val) qui prend en paramètres une liste et une valeur puis retourne une valeur booléenne(True/False) si la valeur val existe dans une liste. 4-Ecrire une fonction note_eleve(liste_note)qui prend en paramètre une liste, puis affiche le nombre de notes entrées, la note la plus élevée, la note la plus basse, et la moyenne de la liste. 5-Définir une fonction insertMilieu(valeur,liste) qui prend en paramètre une valeur et une liste et qui insère la valeur au milieu de la liste puis retourne la liste. Exercices
  • 23. On peut utiliser le "découpage en tranches" ou Slicing pour modifier, ajouter ou supprimer des éléments dans une liste à l'aide du seul opérateur [début : fin : pas ]. Techniques de Slicing pour modifier une liste
  • 24. Modification d'un élément ou d'une sous-liste : Techniques de Slicing pour modifier une liste
  • 25. Insertion d'un un élément ou d'une sous-liste Techniques de Slicing pour modifier une liste
  • 26. Suppression d'un un élément ou d'une sous-liste Techniques de Slicing pour modifier une liste
  • 27. On peut définir une liste en décrivant la séquence contenue dans la liste. CÀD générer des listes d’une manière très concise, sans avoir à utiliser la structure répétitive pour remplir une structure de données (Liste, Dictionnaire, Tuple, …) . Syntaxe sans condition: liste=[expression for x in Liste] Syntaxe avec condition: liste=[expression for x in Liste if condition] Une liste en mode compréhension
  • 28. Exemple liste en compréhension sans condition: Exemple liste en compréhension avec condition: Une liste en mode compréhension
  • 29. Quel est ce résultat du script suivant ? Copie d'une liste
  • 30. Les types de copie d'un objet : Copie simple par l'instruction d'affectation. Copie par l'opérateur de Slicing []. Copie profond(deepcopy) par le module copy. Copie d'une liste
  • 31. Copie par l'instruction d'affectation. L'affectation de la forme listeB=listeA, ne crée pas une copie de la liste1, mais les deux listes listeA et listeB pointe vers la même adresse(référence). NB: la modification ultérieure des éléments de l’une des deux listes affectera aussi l’autre. Exemple : Copie d'une liste
  • 32. Copie par l'opérateur de Slicing [ ]: Si l’on souhaite effectuer une copie(physique) d’une liste listeA qu’on puisse modifier sans affecter listeB, il faut effectuer une affectation de la forme suivante : listeB=listeB[:] ou listeB=list(listeA) ou listeB=[i for i in listeA] Exemple : Copie d'une liste
  • 33. Copie par l'opérateur de Slicing [ ]: Remarque : l'opérateur de Slicing [:] permet juste de dupliquer les éléments du 1er niveau de la liste. Schéma : Copie d'une liste
  • 34. Copie par l'opérateur de Slicing [ ]: Remarque : l'opérateur de Slicing [:] permet juste de dupliquer les éléments du 1er niveau de la liste. Exemple : Copie d'une liste
  • 35. Copie profond par le module copy : Pour résoudre le problème de Slicing on va faire une copie complète avec la méthode deepcopy du module copy. Schéma : Copie d'une liste
  • 36. Copie profond par le module copy : Exemple : Copie d'une liste