QCM : Bases du langage Python (12 questions)

Questions et réponses du QCM

1. Une équipe choisit Python pour un projet qui combine une interface graphique et le traitement d’images. Quelle caractéristique du langage rend ce choix cohérent ?

Sa spécialisation dans le calcul numérique facilite le traitement des images.
Sa polyvalence permet des usages variés, notamment en images et en interfaces graphiques.
Sa syntaxe courte le réserve aux scripts sans interface ni traitement d’images.
Sa grande vitesse d’exécution le rend particulièrement adapté aux interfaces graphiques.

Sa polyvalence permet des usages variés, notamment en images et en interfaces graphiques.

Explication

Python est un langage de haut niveau et polyvalent, utilisé notamment pour les images et les interfaces graphiques. La vitesse élevée, la spécialisation numérique et la limitation aux scripts confondent cette polyvalence avec d’autres caractéristiques.

2. Quel informaticien néerlandais a créé Python en 1991 ?

Dennis Ritchie
Guido van Rossum
Bjarne Stroustrup
James Gosling

Guido van Rossum

Explication

Python a été créé par Guido van Rossum en 1991. James Gosling est associé à Java, Dennis Ritchie à C et Bjarne Stroustrup à C++.

3. En Python, que vaut l’expression 2+3×42 + 3 \times 4 si l’on ne modifie pas l’ordre habituel des opérations ?

2424
1111
2020
1414

$$14$$

Explication

La multiplication est prioritaire : 3×4=123 \times 4 = 12, puis 2+12=142 + 12 = 14. Le résultat 2020 vient d’une addition effectuée en premier, tandis que 2424 et 1111 résultent d’autres erreurs de calcul ou de priorité.

4. Une élève évalue `type(8.0)` dans Python. Quel type la fonction indique-t-elle ?

`str`
`type`
`float`
`int`

`float`

Explication

Une valeur écrite avec une partie décimale, comme 8.0, est de type `float`, et `type()` permet d’identifier ce type. `int` désigne les entiers, `str` les chaînes et `type` n’est pas ici le type de la valeur.

5. Deux calculs produisent des flottants `a` et `b` qui devraient être proches, mais une petite erreur d’arrondi est possible. Quel test permet de vérifier leur proximité ?

`abs(a) < 0.0001`
`a == b`
`abs(a - b) < 0.0001`
`a - b < 0.0001`

`abs(a - b) < 0.0001`

Explication

Pour tenir compte des erreurs d’arrondi, on compare la différence absolue des deux flottants à une petite tolérance. `a == b` exige une égalité exacte, `a - b` ne traite pas le signe et `abs(a)` ne compare pas les deux valeurs.

6. Une élève veut obtenir le quotient entier de 1717 divisé par 44, puis le reste de cette division. Quels opérateurs doit-elle utiliser, dans cet ordre ?

`//` puis `%`
`/` puis `//`
`/` puis `%`
`%` puis `//`

`//` puis `%`

Explication

L’opérateur `//` donne le quotient entier et `%` donne le reste de la division entière. `/` produit un quotient flottant, tandis que `%` n’est pas l’opérateur du quotient.

7. Une variable contient le résultat d’un calcul. Que devient cette valeur en mémoire si aucune nouvelle affectation ne modifie la variable ?

Elle persiste en mémoire jusqu’à la modification de son contenu.
Elle est recalculée à chaque fois que la variable est utilisée.
Elle disparaît dès que l’instruction de calcul est terminée.
Elle conserve le nom de l’opération plutôt que son résultat.

Elle persiste en mémoire jusqu’à la modification de son contenu.

Explication

Une variable conserve en mémoire une valeur ou le résultat d’un calcul jusqu’à ce que son contenu soit modifié. Recalculer à chaque utilisation confond stockage et évaluation, la disparition immédiate nie la persistance, et le nom de l’opération n’est pas la valeur stockée.

8. Une variable `score` vaut 12 et doit être augmentée de 1 en utilisant la syntaxe abrégée. Quelle instruction convient ?

`score -= 1`
`score *= 1`
`score = 1`
`score += 1`

`score += 1`

Explication

L’instruction `score += 1` abrège `score = score + 1` et incrémente donc la variable. `score = 1` remplace sa valeur, `-=` la décrémente et `*=` effectue une multiplication.

9. Quel affichage produit l’instruction `print("Vous avez", 32, "ans.")` avec le comportement par défaut de `print()` ?

`Vous avez 32 ans.`
`Vous avez, 32, ans.`
Une erreur, car la chaîne et le nombre sont incompatibles.
`Vous avez32ans.`

`Vous avez 32 ans.`

Explication

`print()` peut afficher plusieurs valeurs dans une même instruction et insère par défaut un espace entre elles. L’incompatibilité des types concerne la concaténation avec `+`, l’absence d’espaces oublie le séparateur par défaut et les virgules ne sont pas affichées comme du texte.

10. Une variable `age` contient le nombre 25. Quelle expression permet de construire une chaîne contenant « J’ai 25 ans. » en assemblant des chaînes avec `+` ?

`"J’ai " + int(age) + " ans."`
`print("J’ai ", age, " ans.")`
`"J’ai " + age + " ans."`
`"J’ai " + str(age) + " ans."`

`"J’ai " + str(age) + " ans."`

Explication

L’opérateur `+` concatène des chaînes, et le nombre doit d’abord être converti en chaîne avec `str(age)`. L’ajout direct du nombre provoque une incompatibilité de types, `int(age)` reste numérique, et la virgule relève de l’affichage par `print()` plutôt que de la concaténation.

11. Un programme exécute `reponse = input("Votre prénom ? ")`. Quel type de valeur est stocké dans `reponse`, quelle que soit la saisie ?

Le message de saisie
Une chaîne de caractères
Un nombre flottant
Un entier

Une chaîne de caractères

Explication

La fonction `input()` renvoie la saisie sous forme de chaîne de caractères, même si celle-ci ressemble à un nombre. Un entier ou un flottant nécessite une conversion, tandis que le message est affiché et n’est pas la valeur renvoyée.

12. Un programme récupère avec `input()` la saisie « 18 », puis doit lui ajouter 4. Quelle opération permet d’effectuer correctement ce calcul ?

Convertir la saisie avec `str()` puis ajouter 4
Assembler le texte « 4 » à la chaîne de saisie
Convertir la saisie avec `int()` puis ajouter 4
Ajouter 4 à la chaîne de saisie directement

Convertir la saisie avec `int()` puis ajouter 4

Explication

`input()` renvoie une chaîne : il faut la convertir en valeur numérique avec `int()` ou `float()` avant de l’utiliser dans un calcul. Utiliser directement la chaîne confond texte et nombre, `str()` conserve le type texte, et assembler « 4 » réalise une concaténation plutôt qu’une addition.

Révisez avec les flashcards

Mémorisez les réponses avec 34 flashcards sur Bases du langage Python.

Quelle caractéristique de syntaxe distingue Python ?

Sa syntaxe est simple et courte.

Quel est le niveau de langage de Python ?

Python est un langage de haut niveau.

Quels usages la polyvalence de Python permet-elle ?

Les usages en réseau, en images et en interfaces graphiques.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Bases du langage Python.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM