QCM — Python : Variables, Instructions Conditionnelles et Boucles For
Enseignant : Dr. LALLALI
I. Variables
Question 1 :
Quelle est la bonne façon de créer une variable en Python ?
A. x := 10
B. int x = 10
C. x = 10
D. let x = 10
Réponse correcte : C
Justification : En Python, la déclaration se fait avec = sans préciser le type.
Question 2 :
Après exécution du code suivant, quelle est la valeur de x ?
x = 5
x = x + 3
Réponse correcte : 8
Justification : On ajoute 3 à la valeur initiale de x.
Question 3 :
Quelle est la valeur de x après l’instruction x = 2 * 3 ** 2 ?
Réponse correcte : 18
Justification : L’opération d’exponentiation est prioritaire (3**2=9, puis 2*9=18).
Question 4 :
Que contient x après x = "5" + "2" ?
Réponse correcte : "52"
Justification : Il s’agit d’une concaténation de chaînes, non d’une addition.
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Question 5 :
Laquelle de ces lignes est incorrecte ?
A. nom = "Ali"
B. _age = 20
C. 2x = 10
D. note_finale = 15.5
Réponse correcte : C
Justification : Un nom de variable ne peut pas commencer par un chiffre.
Question 6 :
x = 3
y = x
x = 5
print(y)
Quelle valeur sera affichée ?
Réponse correcte : 3
Justification : y garde la valeur de x au moment de l’affectation.
Question 7 :
Quelle est la différence entre x = 10 et x == 10 ?
Réponse correcte : = affecte une valeur, == compare deux valeurs.
Justification : L’un sert à stocker, l’autre à vérifier une égalité.
Question 8 :
a = "10"
b = 2
print(a * b)
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Réponse correcte : "1010"
Justification : Multiplier une chaîne par un entier la répète.
Question 9 :
Que renvoie type(5.0) ?
Réponse correcte : float
Justification : Le suffixe .0 indique un nombre réel.
Question 10 :
x = "Ali"
print(len(x))
Réponse correcte : 3
Justification : La chaîne contient trois caractères.
II. Instructions Conditionnelles (if / elif / else)
Question 11 :
x = 10
if x > 5:
print("Grand")
Réponse correcte : "Grand"
Justification : La condition x > 5 est vraie.
Question 12 :
x = 4
if x % 2 == 0:
print("Pair")
else:
print("Impair")
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Réponse correcte : "Pair"
Justification : 4 est divisible par 2.
Question 13 :
a = 3
if a > 5:
print("A")
elif a == 3:
print("B")
else:
print("C")
Réponse correcte : "B"
Justification : La condition a == 3 est vraie.
Question 14 :
x = 10
if x < 5:
print("A")
else:
print("B")
Réponse correcte : "B"
Justification : La condition est fausse, donc le bloc else s’exécute.
Question 15 :
x = 0
if not x:
print("Zéro")
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Réponse correcte : "Zéro"
Justification : En Python, 0 est équivalent à False.
Question 16 :
x = 5
if x != 5:
print("Différent")
else:
print("Égal")
Réponse correcte : "Égal"
Justification : La condition x != 5 est fausse.
Question 17 :
x = 7
if x > 5 and x < 10:
print("OK")
Réponse correcte : "OK"
Justification : Les deux conditions sont vraies.
Question 18 :
if "a" in "python":
Réponse correcte : Faux
Justification : La lettre "a" n’est pas présente dans "python".
Question 19 :
x = 10
if x > 0:
if x < 20:
print("Entre 0 et 20")
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Réponse correcte : "Entre 0 et 20"
Justification : Les deux conditions sont vérifiées.
Question 20 :
x = 4
if x % 2:
print("Impair")
else:
print("Pair")
Réponse correcte : "Pair"
Justification : x % 2 vaut 0 → condition fausse → bloc else.
III. Boucles For
Question 21 :
for i in range(3):
print(i)
Réponse correcte : 0, 1, 2
Justification : range(3) génère trois valeurs.
Question 22 :
for i in range(2, 5):
print(i)
Réponse correcte : 2, 3, 4
Justification : La borne supérieure n’est pas incluse.
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Question 23 :
for i in range(0, 10, 3):
print(i)
Réponse correcte : 0, 3, 6, 9
Justification : Le troisième paramètre (3) est le pas d’incrémentation.
Question 24 :
for i in range(5):
print("Hello")
Réponse correcte : “Hello” affiché 5 fois
Justification : Boucle exécutée 5 fois (0 à 4).
Question 25 :
for i in "ABC":
print(i)
Réponse correcte : A, B, C
Justification : La boucle parcourt chaque caractère de la chaîne.
Question 26 :
for i in range(4):
pass
print(i)
Réponse correcte : 3
Justification : La dernière valeur du range(4) est 3.
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Question 27 :
somme = 0
for i in range(1, 4):
somme += i
print(somme)
Réponse correcte : 6
Justification : Somme des entiers 1 + 2 + 3.
Question 28 :
for i in range(5):
if i == 2:
break
print(i)
Réponse correcte : 0, 1
Justification : La boucle s’arrête lorsque i == 2.
Question 29 :
for i in range(5):
if i == 2:
continue
print(i)
Réponse correcte : 0, 1, 3, 4
Justification : continue saute l’itération où i == 2.
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données
Question 30 :
for i in range(2):
for j in range(3):
print(i, j)
Réponse correcte :
00
01
02
10
11
12
Justification : Boucle imbriquée : pour chaque i, les 3 valeurs de j sont parcourues.
Dr. LALLALI Ismail
Enseignant et Consultant en Systèmes d’Information et Gestion de Bases de Données