Retour au blog

Quiz : Maîtrises-tu les bases de Python ? (Variables, Boucles, Fonctions)

Le langage Python est le pilier de la NSI et du développement moderne. Es-tu capable de déchiffrer un script et d'anticiper son comportement sans faire d'erreur ?

Cet article a été rédigé à des fins pédagogiques. Les informations présentées peuvent évoluer. Nous t’invitons à vérifier auprès de sources officielles.

L'essentiel à connaître

Pour bien débuter en Python, tu dois comprendre que c'est un langage dont la syntaxe repose sur l'indentation. Contrairement à d'autres langages qui utilisent des accolades, Python utilise des espaces pour délimiter les blocs de code. Une variable est un espace de stockage nommé qui contient une valeur d'un certain type : entier (int), flottant (float), chaîne de caractères (str) ou booléen (bool). L'affectation se fait avec le symbole égal (=), à ne pas confondre avec le test d'égalité (==).

Les structures de contrôle permettent de diriger le flux du programme. La condition "if, elif, else" exécute un bloc si une expression est vraie. Les boucles, quant à elles, répètent des instructions. La boucle "for" est idéale quand on connaît le nombre d'itérations à l'avance (souvent utilisée avec range), tandis que la boucle "while" continue tant qu'une condition reste vérifiée. Attention à ne pas créer de boucle infinie si ta condition de sortie n'est jamais atteinte.

Définition : Une fonction est un bloc de code réutilisable défini par le mot-clé "def", qui peut prendre des paramètres en entrée et renvoyer un résultat via l'instruction "return".

À retenir : L'indentation est obligatoire après chaque instruction se terminant par deux-points (:). Sans elle, Python générera une IndentationError.

Les points clés

Les fonctions sont essentielles pour structurer ton code. Une erreur fréquente est de confondre l'affichage (print) et le retour de valeur (return). Le "print" sert uniquement à montrer une information dans la console, alors que le "return" permet à la fonction de transmettre une donnée à une autre partie du programme. Une fois qu'un "return" est exécuté, la fonction s'arrête immédiatement.

Concernant les boucles, il faut bien maîtriser la fonction range(). Par exemple, range(1, 6) génère les nombres de 1 à 5, car la borne supérieure est toujours exclue. C'est un piège classique dans lequel tombent beaucoup d'étudiants lors de l'écriture de leurs algorithmes.

Formule : range(début, fin, pas) génère une suite d'entiers de "début" à "fin - 1".

Piège classique : L'oubli des deux-points (:) à la fin d'une ligne "if", "for", "while" ou "def" est l'erreur de syntaxe la plus courante.

Quiz : Teste tes connaissances

Question 1 : Quelle instruction permet d'affecter la valeur 10 à la variable x ?

A. x == 10
B. set x = 10
C. x = 10
D. variable x : 10

Réponse : C. En Python, l'affectation simple utilise le symbole "=". L'option A est incorrecte car "==" est l'opérateur de comparaison pour tester l'égalité, pas pour stocker une valeur.

Question 2 : Quel est le type de la donnée suivante : "17.5" ?

A. int
B. str
C. float
D. bool

Réponse : B. Bien que 17.5 soit un nombre, la présence des guillemets en fait une chaîne de caractères (str). Sans les guillemets, ce serait un float.

Question 3 : Comment définit-on une fonction nommée "calculer" en Python ?

A. def calculer():
B. function calculer()
C. define calculer:
D. func calculer():

Réponse : A. Le mot-clé utilisé en Python est "def", suivi du nom de la fonction, de parenthèses et de deux-points. "function" est utilisé en JavaScript, pas en Python.

Question 4 : Que renvoie l'expression 10 % 3 ?

A. 3
B. 3.33
C. 0
D. 1

Réponse : D. L'opérateur % (modulo) renvoie le reste de la division euclidienne. 10 divisé par 3 fait 3 avec un reste de 1.

Question 5 : Quelle boucle est la plus adaptée pour parcourir précisément 10 fois un bloc de code ?

A. while i < 10:
B. for i in range(10):
C. loop 10 times:
D. for i in 10:

Réponse : B. La boucle "for i in range(10)" est la structure standard pour répéter une action un nombre fixe de fois. L'option D est fausse car on ne peut pas itérer directement sur un entier.

Question 6 : Que se passe-t-il si on oublie l'indentation sous un "if" ?

A. Le code s'exécute normalement
B. La condition est ignorée
C. Le programme s'arrête avec une erreur de syntaxe
D. Le bloc "if" s'exécute à l'infini

Réponse : C. Python utilise l'indentation pour définir la structure logique. Si elle manque après un deux-points, l'interpréteur renvoie une erreur fatale empêchant l'exécution.

Question 7 : Quelle instruction permet de sortir immédiatement d'une boucle ?

A. break
B. stop
C. exit
D. return

Réponse : A. "break" permet d'interrompre prématurément une boucle "for" ou "while". "return" permet de quitter une fonction, mais "break" est l'outil spécifique pour les boucles.

Question 8 : Quelle est la valeur de x après : x = 5 ; x = x + 2 ?

A. 5
B. 7
C. 52
D. Erreur

Réponse : B. C'est une réaffectation. On prend la valeur actuelle de x (5), on lui ajoute 2, et on stocke le résultat (7) dans la même variable x.

Question 9 : Comment vérifier si une variable "age" est comprise entre 18 et 25 inclus ?

A. if age == 18 or 25:
B. if 18 < age < 25:
C. if age >= 18 or age <= 25:
D. if age >= 18 and age <= 25:

Réponse : D. Pour qu'une valeur soit dans un intervalle, elle doit être supérieure ou égale à la borne basse ET inférieure ou égale à la borne haute. L'option B exclut les bornes.

Question 10 : Quel mot-clé permet de renvoyer un résultat à la fin d'une fonction ?

A. print
B. output
C. return
D. give

Réponse : C. "return" est l'instruction fondamentale qui termine l'exécution de la fonction et transmet la valeur spécifiée à l'appelant.

Question 11 : Quel sera le dernier nombre affiché par : for i in range(2, 8, 2): print(i) ?

A. 8
B. 6
C. 7
D. 4

Réponse : B. range(2, 8, 2) commence à 2 et avance de 2 en 2. Les valeurs sont 2, 4, 6. Le nombre 8 est exclu car c'est la borne de fin.

Question 12 : Que fait l'opérateur "==" ?

A. Il compare deux valeurs pour voir si elles sont égales
B. Il donne une valeur à une variable
C. Il multiplie deux variables
D. Il crée une nouvelle fonction

Réponse : A. "==" est un opérateur logique de comparaison. Il renvoie True si les deux opérandes sont identiques, sinon False.

Question 13 : Quel symbole commence un commentaire en Python ?

A. //
B. /*
C. --
D. #

Réponse : D. En Python, tout texte après un dièse (#) sur une ligne est ignoré par l'interpréteur. Les autres symboles sont utilisés par le C++ ou le SQL.

Question 14 : Quelle est l'utilité du "elif" ?

A. C'est une erreur de frappe pour "else"
B. Il sert à finir une boucle
C. Il permet de tester une autre condition si la précédente était fausse
D. Il permet de répéter un bloc "if"

Réponse : C. "elif" est la contraction de "else if". Il permet d'enchaîner plusieurs tests de manière structurée et efficace.

Question 15 : Que se passe-t-il si une boucle "while" possèd'une condition toujours vraie ?

A. Elle s'arrête après 100 tours
B. Elle crée une boucle infinie et bloque le programme
C. Elle ne s'exécute jamais
D. Python la transforme automatiquement en boucle "for"

Réponse : B. Une boucle infinie survient quand la condition ne devient jamais fausse. Cela sature le processeur et le programme ne répond plus.

Comment ORBITECH Peut T'aider

ORBITECH AI Academy met à ta disposition des outils concrets pour réviser plus efficacement et progresser à ton rythme.

Tous ces outils sont disponibles sur ta plateforme ORBITECH. Connecte-toi et explore ceux qui correspondent le mieux à tes besoins !

Contenu en libre diffusion — partage autorisé sous réserve de mentionner ORBITECH AI Academy comme source.

COMMENCE DÈS MAINTENANT

Rejoins ORBITECH et accède à des cours, exercices et quiz personnalisés.

Commencer gratuitement
🌍 ORBITECH AI Academy — Free education in 88 languages for 171 countries