Sciences numériques et technologie · Seconde
Quiz sur les fonctions en Python : seconde SNT
Publié le 9 novembre 2026 · Mis à jour le 9 novembre 2026 · Signaler une erreur
L'essentiel
- Une fonction se définit avec def, un nom, des paramètres entre parenthèses et deux-points ; son corps est indenté.
- return renvoie une valeur et arrête la fonction ; print affiche seulement, et une fonction sans return renvoie None.
- Définir une fonction ne l'exécute pas : il faut l'appeler avec des arguments, par exemple f(3).
- Les variables créées dans une fonction sont locales : elles n'existent plus après l'appel.
- En Python, a%b donne le reste de la division euclidienne de a par b 6.
Avant de commencer
Ce quiz porte sur les fonctions en Python, telles qu'on les rencontre en SNT en seconde. Le programme de mathématiques du lycée retient Python comme langage de programmation, et on y décrit volontiers les algorithmes sous forme de fonctions 6. Tu y retrouves donc des notions que tu réutilises dans plusieurs matières.
Les questions couvrent la définition avec def, les paramètres, la différence entre return et print, l'appel d'une fonction, les variables locales, les fonctions qui renvoient un booléen et celles qui travaillent sur une liste. Tu dois déjà connaître les variables, les types, les conditions et les boucles.
Prends le temps de lire chaque code ligne par ligne, comme le ferait l'ordinateur. Les explications t'indiquent pourquoi la bonne réponse est juste et d'où vient l'erreur la plus tentante.
Quiz
14 questions · correction immédiate · ton score reste sur ton appareil.
-
Python utilise
def, suivi du nom de la fonction, des parenthèses et des deux-points. Le motfunctionexiste dans d'autres langages (JavaScript par exemple), ce qui rend la réponse tentante, mais Python ne le reconnaît pas : il provoquerait une erreur de syntaxe. -
La fonction
gaffiche 6 à l'écran, mais elle ne contient aucunreturn. Une fonction sansreturnrenvoie la valeur spécialeNone, doncavautNone. Répondre 6 est tentant parce que 6 apparaît à l'écran, or l'affichage n'est pas une valeur transmise. Il n'y a pas d'erreur : ranger la valeurNonedans une variable est parfaitement permis. -
On remplace
xpar 4 : 3 × 4 + 2 = 12 + 2 = 14. L'erreur fréquente est de calculer 3 × (4 + 2) = 18 en oubliant la priorité de la multiplication sur l'addition, ou de répondre 12 en omettant le +2. -
C'est exact :
%est l'opérateur du reste 6. On le confond parfois avec un pourcentage, comme sur une calculatrice, alors qu'en Python il n'a rien à voir avec les pourcentages. -
On divise 17 par 5 : 17 = 5 × 3 + 2, donc le quotient est 3 et le reste est 2. Or
%fournit le reste 6, pas le quotient. La réponse 3 correspond au quotient, la réponse 3.4 au résultat de la division décimale17 / 5. -
Pour tester la divisibilité par 7, on regarde si le reste de la division euclidienne par 7 est nul 6. Ici 21 = 7 × 3 + 0, le reste vaut 0, la comparaison
0 == 0est vraie et la fonction renvoieTrue. La réponse0confond le reste lui-même avec le résultat de la comparaison, qui est un booléen. -
Dès qu'un
returnest exécuté, la fonction s'arrête : les lignes suivantes sont ignorées, donc la deuxième affirmation est fausse. On peut renvoyer un couple de valeurs, par exemple deux flottants d'un coup 6. Enfin, sansreturn, la fonction renvoieNone, pas 0 : la quatrième affirmation est fausse. -
En Python, le corps d'une fonction doit être décalé vers la droite. Sans indentation, Python ne sait pas que
returnappartient à la fonction et lève une erreur d'indentation. Le point-virgule n'est pas nécessaire en Python, etprintne remplacerait pasreturn: il afficherait sans renvoyer. -
Les arguments sont donnés dans l'ordre : x vaut 3 et y vaut 4. On calcule 3 × 4 + 1 = 12 + 1 = 13. Si tu inverses l'ordre, tu trouves la même valeur ici car la multiplication est commutative, mais ce n'est pas le cas pour une fonction comme
x - y. -
La variable
aest créée à l'intérieur def: elle est locale et disparaît à la fin de l'appel. En dehors de la fonction, Python ne la connaît pas et signale une erreur de nom. Affirmer que 5 s'affiche revient à croire que toutes les variables sont visibles partout, ce qui est faux. -
Les programmes du nouveau lycée précisent que le langage choisi est Python 6, ce qui explique qu'on décrive les algorithmes par des fonctions Python. Cette réponse est donc vraie ; un autre langage comme Scratch peut apparaître au collège mais ne remplace pas Python au lycée.
-
En Python, une liste se note entre crochets 6. Ici
sumdonne 2 + 4 + 9 = 15 etlendonne 3 éléments, donc 15 / 3 = 5. Une erreur classique consiste à diviser par 9 (le plus grand élément) ou par 2 au lieu du nombre d'éléments. -
Une relation entre deux variables peut s'écrire comme une fonction qui répond par
TrueouFalseselon qu'elle est vérifiée 6. Ici 2 × 3 + 1 = 7, et y vaut 7 : l'égalité est vraie, doncTrue. La réponse7suppose que la fonction renvoie la valeur de l'expression, alors que==compare et renvoie un booléen. -
Appeler une fonction, c'est écrire son nom suivi d'arguments entre parenthèses :
f(3)exécute le corps defavec x égal à 3 et renvoie 4. La lignedef f(x):ne fait que définir, sans rien exécuter ;return x + 1n'a de sens qu'à l'intérieur de la fonction ;f = x + 1est une simple affectation qui n'a pas de lien avec l'appel.
Les questions qu'on se pose
Quelle est la différence entre print et return dans une fonction ?
print affiche une valeur à l'écran, mais la fonction ne transmet rien : son résultat vaut None. return renvoie une valeur que tu peux ranger dans une variable ou réutiliser dans un calcul. Pour calculer puis réutiliser, utilise return ; garde print pour montrer un résultat à l'utilisateur.
Pourquoi écrire des fonctions plutôt que recopier le même code ?
Une fonction donne un nom à une série d'instructions que tu peux appeler autant de fois que nécessaire avec des données différentes. Le programme est plus court, plus lisible et plus facile à corriger : une erreur se répare à un seul endroit. C'est aussi la manière dont on décrit les algorithmes en mathématiques au lycée, où l'on parle de fonction Python plutôt que d'algorithme isolé 6.
Sources
Programme visé : Programme d'enseignement de sciences numériques et technologie - Classe de seconde générale et technologique · Ministère de l'Éducation nationale et de la Jeunesse - Bulletin Officiel
- Programme d'enseignement de sciences numériques et technologie - Classe de seconde générale et technologique, Ministère de l'Éducation nationale et de la Jeunesse - Bulletin Officiel. Consulté le 9 novembre 2026.
- Ressources pour l'enseignement des SNT en classe de seconde, Éduscol STI. Consulté le 9 novembre 2026.
- Les fonctions, du Python au VBA en passant par Excel, Éduscol STI. Consulté le 9 novembre 2026.
- Programmes et ressources en sciences numériques et technologie - voie GT, Éduscol. Consulté le 9 novembre 2026.
- Manuel Seconde 2023 - Programmation en Python (pages 206-207), Sesamath. Consulté le 9 novembre 2026.
- Les exemples d'algorithmes du nouveau lycée général, en Python, Sesamath. Consulté le 9 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.