Mathématiques · Première technologiqueÉpreuve anticipée de mathématiques
Listes en Python : exercices corrigés de 1re technologique
Publié le 11 novembre 2026 · Mis à jour le 11 novembre 2026 · Signaler une erreur
L'essentiel
- Une liste se définit par l'énumération de ses éléments ou en compréhension. 2
- Les éléments d'une liste sont repérés par un indice qui commence à 0 : le dernier de n éléments porte l'indice n − 1.
- Une liste peut mélanger des entiers, des flottants, des booléens et du texte. 3
- La liste en compréhension [f(x) for x in abscisse] sert à calculer les ordonnées d'une courbe à tracer. 2
- Pour chaque exercice : écris la liste, déroule le calcul à la main, puis vérifie avec Python.
Comment utiliser ces exercices
Ces exercices t'entraînent à lire, construire et exploiter des listes en Python. Ils supposent que tu sais déjà utiliser des variables, des conditions, des boucles et des fonctions. Les exercices sont classés du plus simple (niveau 1) au plus délicat (niveau 3). Cherche toujours seul(e) avant d'ouvrir un indice, puis compare ta démarche avec la correction, étape par étape.
Les exercices
Exercice 1 Lire des éléments par leur indice
On définit en Python la liste L = [4, 9, 2, 7].
- Que valent
L[0]etL[3]? - Que vaut
len(L)? - Calcule la valeur de
L[0] + L[3].
Indice 1
Le premier élément a l'indice 0.
Indice 2
Le dernier indice vaut len(L) - 1.
Voir la correction pas à pas
On numérote les cases : indice 0 → 4, indice 1 → 9, indice 2 → 2, indice 3 → 7.
Donc
L[0]vaut 4 etL[3]vaut 7.La liste a quatre éléments, donc
len(L)vaut 4. Le dernier indice est bien 3.On additionne :
L[0] + L[3] = 4 + 7 = 11.
Le résultat est 11. Retiens que l'indice 3 désigne ici le quatrième élément, pas le troisième.
Exercice 2 Carrés en compréhension
On écrit C = [n**2 for n in range(1, 6)].
- Écris les éléments de la liste
C. - Calcule la somme de ses éléments.
Indice 1
range(1, 6) commence à 1 et s'arrête avant 6.
Indice 2
Élève chaque entier au carré, puis additionne.
Voir la correction pas à pas
La variable
nprend les valeurs 1, 2, 3, 4, 5.On calcule les carrés : 1, 4, 9, 16, 25. Donc
C = [1, 4, 9, 16, 25].On additionne : 1 + 4 = 5 ; 5 + 9 = 14 ; 14 + 16 = 30 ; 30 + 25 = 55.
La somme vaut 55. La liste contient cinq éléments, car range(1, 6) fournit cinq entiers.
Exercice 3 Moyenne de notes
Une élève range ses notes de la période dans la liste notes = [12, 15, 9, 14].
- Écris une instruction Python qui calcule la somme des notes sans écrire les nombres un par un.
- Écris une instruction qui calcule la moyenne.
- Donne la valeur de la moyenne.
Indice 1
La fonction sum additionne les éléments d'une liste numérique.
Indice 2
La moyenne est la somme divisée par le nombre d'éléments.
Voir la correction pas à pas
Pour la somme :
sum(notes). Elle vaut 12 + 15 + 9 + 14 = 50.Pour le nombre de notes, on utilise
len(notes), qui vaut 4.La moyenne s'écrit
sum(notes) / len(notes).On calcule : 50 / 4 = 12,5. Python affichera
12.5.
La moyenne est de 12,5. Cette écriture reste valable si on ajoute des notes à la liste, ce qui la rend plus fiable qu'un calcul écrit à la main.
Exercice 4 Filtrer avec une condition
On considère T = [3, 8, 12, 5, 20, 7] et la liste G = [x for x in T if x > 6].
- Écris les éléments de
G. - Combien d'éléments
Gcontient-elle ? - Explique le rôle du mot-clé
if.
Indice 1
Parcours T de gauche à droite et garde seulement les valeurs strictement supérieures à 6.
Indice 2
Attention : 6 lui-même ne serait pas gardé.
Voir la correction pas à pas
3 n'est pas strictement supérieur à 6 : on l'écarte.
8 et 12 sont strictement supérieurs à 6 : on les garde. 5 est écarté.
20 et 7 sont supérieurs à 6 : on les garde.
Donc
G = [8, 12, 20, 7], dans l'ordre d'apparition dansT.len(G)vaut 4. Le mot-cléifsert de filtre : seuls les éléments qui vérifient la condition entrent dans la nouvelle liste.
G contient 4 éléments. L'ordre de la liste de départ est conservé.
Exercice 5 Premiers termes d'une suite arithmétique
Une suite arithmétique a pour premier terme et pour raison . On veut la liste de ses huit premiers termes.
- Écris une liste en compréhension qui donne ces huit termes, en utilisant
range(8)et la variablek. - Écris les huit termes.
- Calcule leur somme.
Indice 1
Le terme d'indice k dans la liste (en partant de 0) vaut 5 + 3*k.
Indice 2
Tu peux vérifier la somme avec la formule : nombre de termes × (premier + dernier) / 2.
Voir la correction pas à pas
Le terme de rang
k + 1s'obtient en ajoutantkfois la raison au premier terme :5 + 3*k.La liste est
[5 + 3*k for k in range(8)].Pour
kde 0 à 7 : 5, 8, 11, 14, 17, 20, 23, 26.Somme : 5 + 8 + 11 + 14 + 17 + 20 + 23 + 26 = 124.
Contrôle avec la formule : 8 × (5 + 26) / 2 = 8 × 31 / 2 = 124.
La somme des huit premiers termes vaut 124. Le contrôle par la formule confirme le calcul obtenu terme à terme.
Exercice 6 Types des éléments d'une liste
On définit M = [3, 'a', 2.5, False].
- Donne le type Python de chaque élément (
int,float,stroubool). - Quelle instruction affiche l'élément
'a'? - Peut-on utiliser
sum(M)sans erreur ? Justifie.
Indice 1
Un nombre écrit avec un point est un flottant.
Indice 2
On ne peut pas additionner du texte avec un nombre.
Voir la correction pas à pas
3 est un entier :
int.'a'est entre guillemets :str. 2.5 a une partie décimale :float.Falseest un booléen :bool.'a'est le deuxième élément, donc d'indice 1 :print(M[1]).sum(M)essaie d'additionner 3, puis'a'. Additionner un entier et du texte provoque une erreur de type.Une liste peut donc contenir des types variés, mais les calculs numériques demandent une liste exclusivement numérique.
Les types sont int, str, float, bool. Python accepte la liste mélangée, mais sum(M) échoue à cause de 'a'.
Exercice 7 Ordonnées d'une courbe à tracer
On veut tracer la droite d'équation pour des abscisses entières de 0 à 4. On écrit :
abscisse = [0, 1, 2, 3, 4]
ordonnee = [2*x - 1 for x in abscisse]
- Écris la liste
ordonnee. - Écris les cinq points obtenus.
- Calcule la somme des ordonnées.
- Comment modifier la deuxième ligne pour tracer avec les mêmes abscisses ?
Indice 1
Remplace x par chaque valeur de abscisse, l'une après l'autre.
Indice 2
Pour , change seulement l'expression avant for.
Voir la correction pas à pas
x = 0 : 2×0 − 1 = −1. x = 1 : 2×1 − 1 = 1. x = 2 : 3. x = 3 : 5. x = 4 : 7.
Donc
ordonnee = [-1, 1, 3, 5, 7].Les points sont (0 ; −1), (1 ; 1), (2 ; 3), (3 ; 5) et (4 ; 7). Ils sont bien alignés : l'écart entre deux ordonnées successives est toujours 2.
Somme : −1 + 1 + 3 + 5 + 7 = 15.
Pour , on écrit
[x**2 for x in abscisse]. On ne touche ni à la listeabscisse, ni à la boucle.
La somme des ordonnées vaut 15. Cette liste en compréhension est la méthode type pour obtenir les valeurs d'une fonction avant de la tracer. 2
Les questions qu'on se pose
Pourquoi le premier élément d'une liste a-t-il l'indice 0 ?
C'est la convention de Python : l'indice indique le décalage depuis le début de la liste. Le premier élément n'est décalé de rien, donc son indice est 0. Pour une liste de n éléments, les indices vont de 0 à n − 1. Si Python signale une erreur d'indice, vérifie d'abord que tu n'as pas demandé l'indice n.
Quand utiliser une liste en compréhension plutôt qu'une boucle classique ?
Quand tu fabriques une liste à partir d'une règle simple : carrés d'entiers, ordonnées d'une fonction, valeurs filtrées par une condition. L'écriture est plus courte et se lit comme une définition mathématique. 2 Pour un traitement plus long, avec plusieurs étapes, une boucle for classique reste plus lisible.
Sources
- Programmes et ressources en mathématiques - voie GT, Éduscol. Consulté le 11 novembre 2026.
- Introduction à l'algorithmique et la programmation - Première technologique, Éduscol. Consulté le 11 novembre 2026.
- Algorithmique et programmation - Ressources pour la classe de Première, Éduscol. Consulté le 11 novembre 2026.
Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.