QCM : Introduction à la programmation Python — 22 questions

Questions et réponses du QCM

1. Quelle caractéristique décrit le mieux Python en tant que langage de programmation ?

Un langage limité aux calculs numériques
Un langage interprété, multiplateforme et orienté objet
Un langage compilé réservé à une seule plateforme
Un langage qui exige une connaissance matérielle détaillée

Un langage interprété, multiplateforme et orienté objet

Explication

Python s’exécute sans compilation préalable, fonctionne sur de nombreuses plateformes et permet une programmation orientée objet. Il n’est pas limité à un seul système ni réservé aux calculs numériques.

2. Dans quels domaines Python est-il particulièrement utilisé ?

L’intelligence artificielle et l’analyse de données
La gestion exclusive des bases de données et des réseaux
La conception matérielle des processeurs
Le pilotage uniquement de jeux vidéo

L’intelligence artificielle et l’analyse de données

Explication

Python est présenté comme très utilisé pour l’intelligence artificielle et le traitement des données. Les autres propositions ne correspondent pas à son usage principal dans le cours.

3. Qu’est-ce qui caractérise le typage dynamique en Python ?

Le type dépend du nom donné à la variable
Le type est déterminé automatiquement à partir de la valeur affectée
Le type est choisi à la compilation par le programmeur
Le type reste fixé pour toute la durée du programme

Le type est déterminé automatiquement à partir de la valeur affectée

Explication

En Python, le type d’une variable est déduit automatiquement de la valeur qui lui est attribuée. Ce n’est donc pas le nom de la variable qui détermine son type.

4. Quel nom de variable respecte les règles de nommage en Python ?

type
mon variable
_compteur
3notes

type

Explication

Le nom `type` respecte les règles de forme données dans le cours, tandis que `3notes` commence par un chiffre, `_compteur` commence par un souligné et `mon variable` contient un espace. Les noms de variables doivent éviter ces formes interdites.

5. Quel opérateur permet d’obtenir le reste d’une division entière ?

**
+=
//
%

%

Explication

L’opérateur modulo `%` renvoie le reste d’une division entière. `//` donne le quotient entier, `**` la puissance et `+=` sert à incrémenter une variable.

6. Que fait l’instruction `x += 4` ?

Elle divise `x` par 4 en gardant le quotient
Elle calcule le reste de `x` par 4
Elle ajoute 4 à `x` puis réaffecte le résultat
Elle remplace `x` par sa puissance 4

Elle ajoute 4 à `x` puis réaffecte le résultat

Explication

`+=` est un opérateur d’affectation qui augmente une variable de la valeur indiquée. Il ne s’agit ni d’une division, ni d’une puissance, ni d’un modulo.

7. Que produit l’opérateur `+` lorsqu’il est appliqué à deux chaînes de caractères ?

Il les transforme en liste
Il les duplique
Il compare leur longueur
Il les concatène

Il les concatène

Explication

Sur des chaînes, `+` sert à les concaténer, c’est-à-dire à les coller pour former une chaîne plus longue. La duplication relève de `*` avec un entier.

8. Que renvoie l’expression `'ha' * 3` ?

'hahaha'
'ha ha ha'
Une erreur de type
'ha3'

'hahaha'

Explication

Multiplier une chaîne par un entier la duplique le nombre de fois indiqué. Ici, `'ha' * 3` donne donc `'hahaha'`.

9. Que fait la fonction `print()` par défaut lorsqu’elle affiche une valeur ?

Elle convertit la valeur en entier
Elle affiche sans retour à la ligne
Elle affiche et ajoute un retour à la ligne
Elle stocke la valeur dans une variable

Elle affiche et ajoute un retour à la ligne

Explication

`print()` affiche son argument à l’écran et ajoute par défaut un retour à la ligne. L’option `end` sert justement à modifier ce comportement.

10. Quel élément d’une f-string permet d’insérer une valeur dans la chaîne ?

Les accolades `{}`
Les parenthèses `()`
Les crochets `[]`
Le symbole `#`

Les accolades `{}`

Explication

Une f-string utilise des accolades `{}` pour insérer des valeurs dans la chaîne. C’est cette syntaxe qui permet aussi d’appliquer des formats d’affichage.

11. Quel est le premier indice d’une liste Python ?

1
0
-1
Aucun indice n’est utilisé

0

Explication

En Python, les indices commencent à `0`. L’indice `-1` désigne au contraire le dernier élément de la liste.

12. Que signifie une tranche de forme `[m:n+1]` dans une liste ?

Elle sélectionne les éléments impairs seulement
Elle inverse l’ordre des éléments
Elle inclut les deux bornes
Elle exclut la borne haute

Elle exclut la borne haute

Explication

La borne haute d’une tranche est exclue : l’écriture `[m:n+1]` permet donc d’atteindre l’élément voulu sans inclure la borne supérieure. C’est une règle classique des tranches Python.

13. Que contient `range(5)` ?

Les entiers de 5 à 0
Les entiers de 0 à 4
Les entiers de 0 à 5 inclus
Les entiers de 1 à 5 inclus

Les entiers de 0 à 4

Explication

`range(n)` génère une suite d’entiers allant de `0` à `n-1`. Ainsi, `range(5)` produit `0, 1, 2, 3, 4`.

14. Quel élément est indispensable pour délimiter le bloc d’une boucle `for` en Python ?

Le mot-clé `return`
Le point-virgule en fin de ligne
Les accolades `{}`
La tabulation ou l’indentation

La tabulation ou l’indentation

Explication

En Python, l’indentation délimite le bloc d’instructions de la boucle `for`. Les accolades ne sont pas utilisées pour cela.

15. Quand une boucle `while` s’arrête-t-elle ?

Quand elle contient un `print()`
Quand la condition devient fausse
Quand l’indentation change
Quand elle a été exécutée une seule fois

Quand la condition devient fausse

Explication

Une boucle `while` s’exécute tant que sa condition est vraie et s’arrête lorsque cette condition devient fausse. Sans mise à jour, elle peut devenir infinie.

16. Quelle combinaison est nécessaire pour construire correctement une boucle `while` ?

Importation, affichage et conversion
Déclaration, compilation et exécution
Concaténation, répétition et affichage
Initialisation, test de la condition et mise à jour

Initialisation, test de la condition et mise à jour

Explication

Le cours insiste sur trois éléments : initialiser la variable, tester la condition et la mettre à jour dans le corps de la boucle. Sans mise à jour, la condition peut rester vraie indéfiniment.

17. Quel bloc s’exécute lorsque toutes les conditions précédentes sont fausses ?

while
elif
else
if

else

Explication

`else` sert à traiter le cas où aucun test précédent n’a été validé. Il complète donc la structure conditionnelle avec `if` et `elif`.

18. Que se passe-t-il dans une chaîne `if` / `elif` dès qu’une condition est vraie ?

Toutes les autres conditions sont aussi exécutées
Le bloc `else` s’exécute automatiquement
Le programme s’arrête complètement
Le test s’arrête et une seule branche s’exécute

Le test s’arrête et une seule branche s’exécute

Explication

Dans une structure `if` / `elif`, dès qu’une condition est vraie, le test s’arrête et une seule branche est exécutée. `else` ne s’exécute que si aucune condition précédente n’est vraie.

19. Quel est le rôle d’un module Python ?

Exécuter uniquement des calculs mathématiques
Compresser automatiquement le code
Remplacer toutes les variables du programme
Regrouper des fonctions réutilisables autour d’un thème

Regrouper des fonctions réutilisables autour d’un thème

Explication

Un module est un programme réutilisable qui regroupe des fonctions liées à un même thème. Il permet d’éviter de réécrire du code déjà disponible.

20. Pourquoi utilise-t-on l’instruction `import` ?

Pour afficher l’aide d’un objet
Pour convertir une chaîne en entier
Pour créer une variable globale
Pour charger un module ou des éléments d’un module

Pour charger un module ou des éléments d’un module

Explication

`import` sert à charger un module ou certains éléments d’un module afin de les utiliser dans le programme. La fonction `help()` sert, elle, à afficher de l’aide.

21. Qu’est-ce qu’une cellule dans Jupyter Notebook ?

Un opérateur de mise en forme
L’unité de base pouvant contenir du texte ou du code
Un fichier système caché
Une bibliothèque graphique

L’unité de base pouvant contenir du texte ou du code

Explication

Dans Jupyter Notebook, la cellule est l’unité de base du document et peut contenir du texte Markdown ou du code exécutable. C’est l’élément central de l’environnement interactif.

22. Que signifie l’état d’exécution `In [*]` dans Jupyter Notebook ?

La cellule est en cours d’exécution ou non terminée
La cellule contient uniquement du texte
Le notebook est fermé
La cellule a terminé son calcul et affiche un résultat

La cellule est en cours d’exécution ou non terminée

Explication

`In [*]` indique qu’une cellule est en cours d’exécution ou n’a pas encore terminé son traitement. Quand elle est terminée, un numéro d’exécution apparaît à la place.

Révisez avec les flashcards

Mémorisez les réponses avec 22 flashcards sur Introduction à la programmation Python.

Python — objectif principal ?

Langage interprété, multiplateforme, orienté objet.

Variable — définition ?

Zone mémoire avec nom, stocke une valeur.

Typage dynamique — rôle ?

Type déterminé automatiquement par la valeur.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Introduction à la programmation 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