QCM de Révision : Python
Préparation Examen - Listes, Tuples, Ensembles, Dictionnaires et
Fonctions
Partie 1 : Les Listes (TP 1)
1. Soit L = [12, 7, 19, 5, 14] . Que retourne len(L) ?
A. 4
B. 5
C. 14
D. 12
2. Comment accéder au premier élément de la liste L ?
A. L[1]
B. L(0)
C. L[0]
D. [Link]()
3. Comment accéder au dernier élément de la liste L sans connaître sa taille ?
A. L[-1]
B. [Link]()
C. L[len]
D. L[0]
4. Quelle commande ajoute la valeur 10 à la fin de la liste L ?
A. [Link](10)
B. [Link](10)
C. [Link](10)
D. L[5] = 10
5. Que fait la condition if x % 2 == 0: dans une boucle ?
A. Elle vérifie si x est divisible par 2 (pair).
B. Elle divise x par 2.
C. Elle vérifie si x est impair.
D. Elle calcule le pourcentage de x.
6. Pour compter le nombre de fois que 4 apparaît, on utilise une variable compteur .
Comment l'incrémenter ?
A. compteur =+ 1
B. compteur ++
C. compteur += 1
D. compteur + 1
7. Quelle méthode permet d'inverser l'ordre des éléments d'une liste L ?
A. [Link]()
B. [Link]()
C. [Link](reverse=True)
D. reverse(L)
8. Soit Notes = [12, 15, 10, 18] . Que retourne max(Notes) ?
A. 12
B. 18
C. 4
D. 55
9. Comment calculer la somme totale des éléments de la liste Notes ?
A. total(Notes)
B. [Link]()
C. sum(Notes)
D. add(Notes)
10. Quelle est la formule exacte pour calculer la moyenne de la liste Notes ?
A. mean(Notes)
B. sum(Notes) / len(Notes)
C. max(Notes) / min(Notes)
D. len(Notes) / sum(Notes)
Partie 2 : Les Tuples (TP 2)
11. Quelle syntaxe définit correctement un tuple ?
A. t = [1, 2, 3]
B. t = {1, 2, 3}
C. t = (1, 2, 3)
D. t = <1, 2, 3>
12. Soit resultats = [("Maths", 15), ("Physique", 18)] . Que retourne
resultats[0] ?
A. "Maths"
B. 15
C. ("Maths", 15)
D. Erreur
13. Lors de la boucle for matiere, note in resultats: , que vaut note à la première
itération ?
A. "Maths"
B. 15
C. 0
D. ("Maths", 15)
14. Un tuple est-il modifiable (peut-on faire t[0] = "Nouveau" ) ?
A. Oui, toujours
B. Non, un tuple est immuable
C. Oui, si on utilise append
D. Seulement les tuples de nombres
15. Soit adherents = [(1, "Ali", "Tennis"), (2, "Nadia", "Foot")] . Que renvoie
adherents[1][1] ?
A. 1
B. "Ali"
C. "Nadia"
D. "Foot"
16. Que fait adherents[0][2] dans la liste précédente ?
A. Renvoie "Tennis"
B. Renvoie "Ali"
C. Renvoie 1
D. Provoque une erreur
Partie 3 : Les Ensembles - Sets (TP 2)
17. Quelle est la particularité principale d'un ensemble (Set) en Python ?
A. Il est toujours trié par ordre alphabétique
B. Il n'accepte pas les éléments en double (doublons)
C. Il ne peut contenir que des nombres
D. On y accède par des index comme s[0]
18. Soit L = ["A", "B", "A"] . Que donne set(L) ?
A. {"A", "B", "A"}
B. {"A", "B"}
C. ["A", "B"]
D. ("A", "B")
19. Pour réaliser l'UNION de deux ensembles set_A et set_B , quel opérateur utilise-t-
on ?
A. set_A + set_B
B. set_A & set_B
C. set_A | set_B
D. set_A - set_B
20. Quel opérateur permet de trouver l'INTERSECTION (éléments communs) entre set_A
et set_B ?
A. set_A & set_B
B. set_A * set_B
C. set_A | set_B
D. set_A ^ set_B
21. Comment obtenir les éléments qui sont dans set_A mais PAS dans set_B
(Différence) ?
A. set_A \ set_B
B. set_A - set_B
C. set_A / set_B
D. set_B - set_A
22. L'expression {eleve[2] for eleve in adherents} (Set Comprehension) sert à :
A. Créer une liste des sports
B. Créer un dictionnaire des sports
C. Créer un ensemble (Set) unique des sports pratiqués
D. Compter le nombre de sports
Partie 4 : Les Dictionnaires (TP 3)
23. Quelle syntaxe permet de créer un dictionnaire vide nommé carnet ?
A. carnet = []
B. carnet = {}
C. carnet = ()
D. carnet = dict[]
24. Soit etudiant = {"nom": "Ali", "age": 22} . Comment accéder à l'âge ?
A. etudiant(1)
B. etudiant["age"]
C. [Link]
D. etudiant[22]
25. Comment modifier l'âge de l'étudiant pour qu'il devienne 23 ?
A. [Link]("age", 23)
B. etudiant["age"] = 23
C. [Link](23)
D. etudiant[1] = 23
26. Comment ajouter une nouvelle clé "module" avec la valeur "Info" dans etudiant ?
A. [Link]("module", "Info")
B. [Link]("module", "Info")
C. etudiant["module"] = "Info"
D. etudiant + {"module": "Info"}
27. Que fait la méthode [Link]("pomme", 0) ?
A. Elle ajoute "pomme" au prix 0.
B. Elle retourne le prix de "pomme", ou 0 si "pomme" n'existe pas.
C. Elle supprime la "pomme".
D. Elle met le prix de "pomme" à 0.
28. Que se passe-t-il si on fait dico["inconnu"] et que la clé n'existe pas ?
A. Cela retourne None
B. Cela retourne 0
C. Cela provoque une erreur (KeyError)
D. Cela crée la clé automatiquement
29. Si freq = {'a': 2} , que fait freq['a'] = [Link]('a', 0) + 1 ?
A. La valeur de 'a' devient 1
B. La valeur de 'a' devient 3
C. Cela provoque une erreur
D. La valeur de 'a' devient 0
30. Dans l'exercice des fréquences de lettres, why utilise-t-on if lettre != " ": ?
A. Pour ignorer les espaces.
B. Pour compter les espaces.
C. Pour remplacer les espaces.
D. Pour arrêter la boucle.
Partie 5 : Fonctions & Divers (TP 3)
31. Quel mot-clé est utilisé pour définir une fonction en Python ?
A. function
B. def
C. func
D. define
32. Comment spécifier ce qu'une fonction doit renvoyer comme résultat final ?
A. print
B. output
C. return
D. send
33. Soit la fonction def calculer_prix(produit, quantite): . "produit" et "quantite"
sont appelés :
A. Des boucles
B. Des listes
C. Des paramètres (ou arguments)
D. Des dictionnaires
34. Dans f"L'étudiant {nom} a {age} ans" , le f sert à :
A. Formater la chaîne de caractères (f-string)
B. Signifier "fonction"
C. Mettre le texte en gras
D. Transformer en float
35. Comment parcourir toutes les lettres d'une chaîne de caractères chaine ?
A. for lettre in chaine:
B. while lettre in chaine:
C. for i in range(chaine):
D. if lettre in chaine:
36. Que vaut len("Python") ?
A. 5
B. 6
C. 7
D. "Python"
37. Comment appeler correctement la fonction afficher_etudiant(dico) avec le
dictionnaire data ?
A. call afficher_etudiant(data)
B. afficher_etudiant(data)
C. data.afficher_etudiant()
D. def afficher_etudiant(data)
38. Dans une fonction, si aucun return n'est spécifié, que renvoie la fonction par défaut
?
A. 0
B. False
C. None
D. Une chaîne vide ""
39. Quelle est l'utilité du bloc # Test vu dans les TPs ?
A. Compiler le code
B. Vérifier que les fonctions écrites marchent bien
C. Déclarer des variables globales
D. Commenter tout le code
40. Le code print(mon_carnet) affiche :
A. Le dictionnaire et son contenu sous forme texte.
B. Rien, il faut une boucle.
C. Seulement les clés.
D. Seulement les valeurs.
Corrigé du QCM
Auto-évaluation (40 Questions)
1. B (5 éléments) 2. C (L[0]) 3. A (L[-1]) 4. C ([Link])
5. A (Vérifie si pair) 6. C (+= 1) 7. B ([Link]) 8. B (18)
9. C (sum) 10. B (sum/len) 11. C (parenthèses) 12. C (le tuple entier)
13. B (15) 14. B (Immuable) 15. C ("Nadia") 16. A ("Tennis")
17. B (Pas de
doublons) 18. B ({"A", "B"}) 19. C (|) 20. A (&)
22. C (Ensemble
21. B (-) unique) 23. B ({}) 24. B (etudiant["age"])
27. B (Valeur par
25. B ([clé] = valeur) 26. C (Même syntaxe) défaut) 28. C (KeyError)
30. A (Ignorer
29. B (2 + 1 = 3) espaces) 31. B (def) 32. C (return)
33. C (paramètres) 34. A (f-string) 35. A (for...in) 36. B (6 lettres)
37. B (nom(args)) 38. C (None) 39. B (Vérifier) 40. A (Affichage texte)