Vous êtes sur la page 1sur 9

PROGRAMMATION EN LANGAGE PYTHON LES LISTES

Chapitre 6 : Les Listes


Sommaire :
1) Définition...........................................................................................................................2
2) Utilisation et indexage.......................................................................................................2
a) Indexage positif..............................................................................................................2
b) Indexage négatif.............................................................................................................3
3) Listes de listes....................................................................................................................3
4) Concaténation et duplication des listes..............................................................................4
5) Tranches de listes...............................................................................................................4
6) Modifier une liste...............................................................................................................5
a) Modifier un élément d’une liste.....................................................................................5
b) Supprimer un élément d’une liste..................................................................................5
7) Les fonctions intégrées des tuples.....................................................................................5
a) La fonction list().............................................................................................................5
b) Les fonctions range() et list().........................................................................................6
c) Longueur d'une liste – la fonction len().........................................................................6
d) Minimum, maximum et somme d'une liste....................................................................6
8) Les Méthodes de liste........................................................................................................7

ELBASRI OFPPT Page 1 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

1) Définition
Une liste est une collection de données ordonnée, modifiable et qui autorise les valeurs en
double. Ses valeurs peuvent être de types différents (par exemple entier et chaîne de caractères),
ce qui leur confère une grande flexibilité.
Une liste est déclarée par une série de valeurs (n'oubliez pas les guillemets, simples ou doubles,
s'il s'agit de chaînes de caractères) séparées par des virgules, et le tout encadré par des crochets.
En voici quelques exemples :
>>> animaux = ['girafe', 'tigre', 'singe', 'souris']
>>> tailles = [5, 2.5, 1.75, 0.15]
>>> mixte = ['girafe', 5, 'souris', 0.15]
>>> animaux
['girafe', 'tigre', 'singe', 'souris']
>>> tailles
[5, 2.5, 1.75, 0.15]
>>> mixte
['girafe', 5, 'souris', 0.15]

2) Utilisation et indexage
Les listes sont utilisées pour stocker plusieurs éléments dans une seule variable.
Pour accéder aux valeurs dans une liste, utilisez les crochets [] pour le découpage avec l'index ou
les indices pour obtenir la valeur disponible à cet index.

a) Indexage positif
Les indices d'une liste de n éléments commence à 0 et se termine à n-1. Voyez l'exemple suivant :
>>> animaux = ['girafe','tigre','singe','souris']
>>> animaux[0]
'girafe'
>>> animaux[1]
'tigre'
>>> animaux[3]
'souris'
Par conséquent, si on appelle l'élément d'indice 4 de notre liste, Python renverra un message
d'erreur :

ELBASRI OFPPT Page 2 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

>>> animaux[4]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
b) Indexage négatif
La liste peut également être indexée avec des nombres négatifs.
Les indices négatifs reviennent à compter à partir de la fin. On peut accéder au dernier élément à
l'aide de l'indice -1. L'avant-dernier élément a lui l'indice -2, ... etc.
>>> animaux = ['girafe','tigre','singe','souris']
>>> animaux[-1]
'souris'
>>> animaux[-2]
'singe'

3) Listes de listes
Il est tout à fait possible de construire des listes de listes. Cette fonctionnalité peut parfois être
très pratique. Par exemple :
>>> enclos1 = ['girafe', 4]
>>> enclos2 = ['tigre', 2]
>>> enclos3 = ['singe', 5]
>>> zoo = [enclos1, enclos2, enclos3]
>>> zoo
[['girafe', 4], ['tigre', 2], ['singe', 5]]
Dans cet exemple, chaque sous-liste contient une catégorie d'animal et le nombre d'animaux pour
chaque catégorie.
Pour accéder à un élément de la liste, on utilise l'indexage habituel :
>>> zoo[1]
['tigre', 2]
Pour accéder à un élément de la sous-liste, on utilise un double indexage :
>>> zoo[1][0]
'tigre'
>>> zoo[1][1]
2

ELBASRI OFPPT Page 3 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

4) Concaténation et duplication des listes


Tout comme les chaînes de caractères, les listes supportent l'opérateur + de concaténation, ainsi
que l'opérateur * pour la duplication :
>>> ani1 = ['girafe', 'tigre']
>>> ani2 = ['singe', 'souris']
>>> ani1 + ani2
['girafe', 'tigre', 'singe', 'souris']
>>> ani1 * 3
['girafe', 'tigre', 'girafe', 'tigre', 'girafe', 'tigre']

5) Tranches de listes
L'accès au contenu d'une liste fonctionne sur le modèle suivant :
Liste [ Debut : Fin : Pas ]
 Debut (facultatif): Un nombre entier spécifiant à quelle position commencer. La valeur
par défaut est 0.
 Fin (facultatif) : Un nombre entier spécifiant à quelle position s'arrêter (non inclus). par
défaut jusqu’à la fin.
 Pas (facultatif): Un nombre entier spécifiant l'incrémentation. La valeur par défaut est 1
Si on veut récupérer tous les éléments, de l'élément m inclus à l'élément n+1 exclu), on pourra
utilise le modèle liste [m:n+1]. On dit alors qu'on récupère une tranche de la liste, par exemple :
>>> animaux = ['girafe', 'tigre', 'singe', 'souris']
>>> animaux[0:2]
['girafe', 'tigre']
>>> animaux[0:3]
['girafe', 'tigre', 'singe']
>>> animaux[2:]
['singe', 'souris']
>>> animaux[:]
['girafe', 'tigre', 'singe', 'souris']
>>> animaux[1:-1]
['tigre', 'singe']
Notez que lorsqu'aucun indice n'est indiqué à gauche ou à droite du symbole deux-points, Python
prend par défaut tous les éléments depuis le début ou tous les éléments jusqu'à la fin
respectivement.
On peut aussi préciser le pas en ajoutant un symbole deux-points supplémentaire et en indiquant
le pas par un entier.

ELBASRI OFPPT Page 4 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

>>> animaux = ['girafe', 'tigre', 'singe', 'souris']


>>> animaux[0:3:2]
['girafe', 'singe']
>>> x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> x
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> x[::2]
[0, 2, 4, 6, 8]
>>> x[::3]
[0, 3, 6, 9]
>>> x[1:6:3]
[1, 4]

6) Modifier une liste


a) Modifier un élément d’une liste
Pour modifier un élément avec un index vous pouvez utiliser l’opérateur d’affectation (selon la
syntaxe: liste [index] = nouvelle_valeur).
>>> liste = ["a", "b", "c"]
>>> liste[1] = "d"
>>> liste
['a', 'd', 'c']
b) Supprimer un élément d’une liste
Il est parfois nécessaire de supprimer un élément de la liste. Pour cela vous pouvez utiliser
l'instruction del (selon la syntaxe: del nom_obj).
>>> liste = ["a", "b", "c"]
>>> del liste[1]
>>> liste
['a', 'c']

7) Les fonctions intégrées des listes


a) La fonction list()
La fonction list () convertit une séquence d'éléments en une liste. Cette fonction retourne le tuple.
Syntaxe: list( seq )
seq - Il s'agit de la séquence d'éléments à convertir en liste.
L'exemple suivant montre l'utilisation de la fonction list ().

ELBASRI OFPPT Page 5 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

>>> tuple1 = (2, 4, 7, 9)


>>> liste1 = list(liste1)
>>> type(liste1)
<class 'list'>
>>> liste1
[2, 4, 7, 9]
>>> list("Bonjour")
['B', 'o', 'n', 'j', 'o', 'u', 'r']
b) Les fonctions range() et list()
L'instruction range() est une fonction spéciale en Python qui génère des nombres entiers compris
dans un intervalle. Lorsqu'elle est utilisée en combinaison avec la fonction list(), on obtient une
liste d'entiers. Par exemple :

>>> list(range(0, 5))


[0, 1, 2, 3, 4]
>>> list(range(15, 20))
[15, 16, 17, 18, 19]
>>> list(range(0, 1000, 200))
[0, 200, 400, 600, 800]
>>> list(range(2, -2, -1))
[2, 1, 0, -1]
c) Longueur d'une liste – la fonction len()
L'instruction len() vous permet de connaître la longueur d'une liste, c'est-à-dire le nombre
d'éléments que contient la liste. Voici un exemple d'utilisation :
>>> animaux = ['girafe', 'tigre', 'singe', 'souris']
>>> len(animaux)
4
d) Minimum, maximum et somme d'une liste
Les fonctions min(), max() et sum() renvoient respectivement le minimum, le maximum et la
somme d'une liste passée en argument.

>>> liste = list(range(10))


>>> liste
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> sum(liste)
45

ELBASRI OFPPT Page 6 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

>>> min(liste)
0
>>> max(liste)
9
Même si en théorie ces fonctions peuvent prendre en argument une liste de strings, on les utilisera
la plupart du temps avec des types numériques (liste d'entiers et / ou de floats).

8) Les Méthodes de liste


Python dispose d’un ensemble de méthodes intégrées que vous pouvez utiliser sur des objets de
type liste.
 La méthode list.append (x) : Ajoute l’élément x à la fin de la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6]
>>> liste1
[4, 5, 2, 7, 2, 6]
>>> liste1.append(2)
>>> liste1
[4, 5, 2, 7, 2, 6, 2]
 La méthode list.clear () : Supprime tous les éléments de la liste
>>> liste1.clear()
>>> liste1
[]
 La méthode list.copy () : Renvoie une copie de la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6]
>>>liste2 = liste1.copy()
>>> liste2
[ 4, 5, 2, 7, 2, 6]
 La méthode list.count (x) : Renvoie le nombre d'éléments ayant la valeur x dans la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste.count(2)
3
>>> liste.count(7)
1
 La méthode list.extend (iterable) : Ajoute tous les éléments de iterable à la fin de la liste
courante.

ELBASRI OFPPT Page 7 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

>>> liste1 = [4, 5, 2, 7, 2, 6]


>>> liste2 = [10, 20, 30]
>>> liste1.extend(liste2)
>>> liste1
[4, 5, 2, 7, 2, 6, 10, 20, 30]
>>> liste2
[10, 20, 30]
 La méthode list.index (x[, start[, end]]) : Renvoie la position du premier élément de la liste
dont la valeur égale x (en commençant à compter les positions à partir de zéro). Une
exception ValueError est levée si aucun élément n'est trouvé.
Les arguments optionnels start et end sont interprétés de la même manière que dans la notation
des tranches et sont utilisés pour limiter la recherche à une sous-séquence particulière.
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.index(2)
2
>>> liste1.index(2 , 3 , 6)
4
>>> liste1.index(8)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 8 is not in list
 La méthode list.insert ( i , x) : Ajoute l’élément x à la position i .
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.insert(3,10)
>>> liste1
[4, 5, 2, 10, 7, 2, 6, 2]
>>> liste1.insert(13,20)
>>> liste1
[4, 5, 2, 10, 7, 2, 6, 2, 20]
 La méthode list.pop ([i]) : Enlève de la liste l'élément situé à la position indiquée et le renvoie
en valeur de retour. Si aucune position n'est spécifiée, pop() enlève et renvoie le dernier
élément de la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.pop(3)
7
>>> liste1

ELBASRI OFPPT Page 8 sur 9


PROGRAMMATION EN LANGAGE PYTHON LES LISTES

[4, 5, 2, 2, 6, 2]
>>> liste1.pop()
2
>>> liste1
[4, 5, 2, 2, 6]
 La méthode list.remove ( x ) : Supprime de la liste le premier élément dont la valeur est égale
à x . Une exception ValueError est levée s'il n'existe aucun élément avec cette valeur.
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.remove(2)
>>> liste1
[4, 5, 7, 2, 6, 2]
>>> liste1.remove(10)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
 La méthode list.reverse () : Inverse l'ordre de la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.reverse()
>>> liste1
[2, 6, 2, 7, 2, 5, 4]
 La méthode list.sort (reverse=False) : Trie la liste
>>> liste1 = [ 4, 5, 2, 7, 2, 6, 2]
>>> liste1.sort()
>>> liste1
[2, 2, 2, 4, 5, 6, 7]
>>> liste1.sort(reverse=True)
>>> liste1
[7, 6, 5, 4, 2, 2, 2]

ELBASRI OFPPT Page 9 sur 9

Vous aimerez peut-être aussi