QCM : Bases de Python — 20 questions

Questions et réponses du QCM

1. Quelle combinaison associe correctement chaque raccourci clavier à son action dans l’environnement Python ?

F5 exécute la cellule active, Ctrl+Entrée tout le script et F9 une sélection d’instructions
F5 exécute tout le script, Ctrl+Entrée la cellule active et F9 une sélection d’instructions
F5 exécute une sélection, Ctrl+Entrée tout le script et F9 la cellule active
F5 exécute tout le script, Ctrl+Entrée une sélection et F9 la cellule active

F5 exécute tout le script, Ctrl+Entrée la cellule active et F9 une sélection d’instructions

Explication

Le raccourci F5 lance l’exécution de l’ensemble du script, tandis que Ctrl+Entrée cible la cellule contenant le curseur et F9 une sélection d’instructions. La confusion fréquente consiste à attribuer l’exécution de toute la cellule à F5 plutôt qu’à Ctrl+Entrée.

2. Quelle affirmation décrit correctement une cellule Python et l’emplacement possible des commentaires ?

Une cellule ne peut contenir qu’une fonction et les commentaires utilisent le symbole //
Une cellule peut contenir plusieurs fonctions mais les commentaires doivent être placés au début
Une cellule peut contenir plusieurs fonctions et un commentaire peut apparaître partout avec le symbole #
Une cellule ne peut contenir qu’une fonction et un commentaire doit apparaître en fin de ligne

Une cellule peut contenir plusieurs fonctions et un commentaire peut apparaître partout avec le symbole #

Explication

Une cellule Python peut regrouper autant de fonctions que nécessaire, et le symbole # permet d’écrire des commentaires à différents endroits du code. Le symbole // n’est pas le marqueur de commentaire utilisé en Python.

3. Quelle propriété caractérise le type entier int en Python ?

Il représente exactement une valeur entière, dans la limite de la capacité de l’ordinateur
Il représente une valeur décimale approchée avec un nombre limité de chiffres
Il représente une valeur logique pouvant prendre deux états distincts
Il représente une suite ordonnée de caractères placés entre guillemets

Il représente exactement une valeur entière, dans la limite de la capacité de l’ordinateur

Explication

Le type int stocke exactement des nombres entiers relatifs, avec une limite liée à la capacité de la machine. Les valeurs décimales approchées relèvent du type float, et non du type int.

4. Comment faut-il écrire en Python le nombre décimal correspondant à trois virgule quatorze ?

3,14
« 3.14 »
3;14
3.14

3.14

Explication

Python utilise un point pour séparer la partie entière et la partie décimale, ce qui donne 3.14. La virgule française ne joue pas ce rôle dans l’écriture d’un nombre décimal Python.

5. Pourquoi l’expression Python 3*0.1 peut-elle produire 0.30000000000000004 au lieu de 0.3 ?

Parce que le type int arrondit les nombres décimaux vers le haut
Parce que Python transforme toute multiplication en addition répétée
Parce que le point décimal est interprété comme un séparateur de milliers
Parce que les calculs en flottants peuvent produire une représentation approchée

Parce que les calculs en flottants peuvent produire une représentation approchée

Explication

Les calculs utilisant des valeurs de type float peuvent donner une représentation approchée, ce qui explique ce résultat légèrement différent de 0.3. La multiplication n’est pas remplacée par une addition et le type int n’intervient pas ici.

6. Quelle valeur peut prendre une variable booléenne en Python, notamment après l’évaluation d’un test ?

Un nombre entier ou un nombre flottant
True ou False
Une liste vide ou une liste remplie
Une chaîne vide ou une chaîne non vide

True ou False

Explication

Un booléen est une variable logique dont les deux valeurs possibles sont True et False, notamment comme résultat d’une condition. Les nombres, chaînes et listes sont d’autres catégories de valeurs, même s’ils peuvent être utilisés dans des expressions logiques.

7. Quelle description correspond à une liste Python ?

Une séquence ordonnée indexée, écrite entre crochets, pouvant contenir des éléments de types différents
Un nombre décimal écrit avec un point, dont la longueur dépend de la mémoire disponible
Une valeur logique écrite entre crochets, limitée aux états True et False
Un texte délimité par des guillemets, dont chaque caractère reçoit automatiquement un index

Une séquence ordonnée indexée, écrite entre crochets, pouvant contenir des éléments de types différents

Explication

Une liste est une séquence ordonnée et indexée, délimitée par des crochets, qui peut être hétérogène, vide ou imbriquée. Les guillemets caractérisent une chaîne de caractères, tandis que True et False caractérisent des booléens.

8. Comment peut-on écrire correctement une chaîne contenant une apostrophe dans Python, comme dans le mot « l'arbre » ?

Écrire l'arbre entre crochets afin de distinguer le texte d’une liste
Écrire 'l\'arbre' ou utiliser "l'arbre" comme délimiteurs
Écrire 'l'arbre' sans protection, car l’apostrophe interne est ignorée
Écrire l'arbre avec une virgule entre chaque caractère pour fermer la chaîne

Écrire 'l\'arbre' ou utiliser "l'arbre" comme délimiteurs

Explication

Une apostrophe qui apparaît dans une chaîne délimitée par apostrophes doit être protégée par un antislash, ou bien la chaîne peut être encadrée par des guillemets. Sans cette protection, l’apostrophe interne est interprétée comme la fin de la chaîne.

9. Quelle expression Python calcule le reste de la division euclidienne de aa par bb ?

a/ba/b
a%ba\%b
a∗∗ba**b
a//ba//b

$$a\%b$$

Explication

L’opérateur %\% renvoie le reste de la division euclidienne, tandis que //// renvoie le quotient entier. L’expression a/ba/b effectue une division flottante et a∗∗ba**b une exponentiation.

10. Quelle valeur produit l’expression Python 2∗∗32**3 ?

99
55
66
88

$$8$$

Explication

L’opérateur ∗∗** réalise une exponentiation, donc 2∗∗3=23=82**3 = 2^3 = 8. L’opérateur ∗* aurait effectué une multiplication et donné 2×3=62\times3 = 6.

11. Quelle expression est vraie lorsque x=4x=4 et y=7y=7 ?

x==yx==y
x>yx>y
x<yx<y
not x<yx<y

$$x<y$$

Explication

Avec x=4x=4 et y=7y=7, l’inégalité x<yx<y est vraie. L’égalité et l’inégalité inverse sont fausses, et la négation de x<yx<y est donc également fausse.

12. Quel opérateur Python teste si deux valeurs sont égales ?

<=<=
==
!=!=
====

$$==$$

Explication

L’opérateur ==== compare deux valeurs pour vérifier leur égalité. Le symbole == affecte une valeur à une variable, tandis que !=!= teste la différence et <=<= l’infériorité ou l’égalité.

13. Dans quel cas une instruction conditionnelle exécute-t-elle le traitement associé ?

Lorsque la condition logique est remplacée par une affectation
Lorsque toutes les variables changent de type
Lorsque la condition logique est satisfaite
Lorsque le programme atteint une liste vide

Lorsque la condition logique est satisfaite

Explication

Une instruction conditionnelle déclenche le traitement lorsque son expression logique est satisfaite. Une affectation, une liste vide ou une conversion de type ne constitue pas en elle-même le critère général d’exécution.

14. Quels entiers sont générés par range(2,5)range(2,5) ?

1,2,3,41,2,3,4
2,3,42,3,4
2,3,4,52,3,4,5
0,1,2,3,40,1,2,3,4

$$2,3,4$$

Explication

La fonction range(a,b)range(a,b) commence à aa et s’arrête avant bb, donc range(2,5)range(2,5) produit 2,3,42,3,4. La borne finale 55 n’est pas incluse.

15. Que construit l’expression [2∗x for x in range(3)][2*x\ for\ x\ in\ range(3)] ?

L’intervalle 0,1,20,1,2 sans transformation
La liste [0,2,4][0,2,4]
La liste [2,4,6][2,4,6]
Une valeur unique égale à 66

La liste $$[0,2,4]$$

Explication

La compréhension applique 2∗x2*x à chaque valeur de range(3)range(3), c’est-à-dire 0,1,20,1,2, et construit ainsi la liste [0,2,4][0,2,4]. L’expression ne conserve donc pas les valeurs brutes et ne produit pas une seule somme.

16. Si L=[10,20,30,40]L=[10,20,30,40], que contient la tranche L[1:3]L[1:3] ?

[10,40][10,40]
[10,20,30][10,20,30]
[20,30,40][20,30,40]
[20,30][20,30]

$$[20,30]$$

Explication

Une tranche L[i:j]L[i:j] inclut les indices de ii à j−1j-1. Ainsi, L[1:3]L[1:3] sélectionne les éléments d’indices 11 et 22, soit [20,30][20,30].

17. Quelle instruction permet d’insérer la valeur 8 à la position d’indice 2 dans la liste L ?

L.add(8, 2)
L.append(2, 8)
L.extend(2, 8)
L.insert(2, 8)

L.insert(2, 8)

Explication

La méthode insert reçoit d’abord la position, puis l’élément à placer dans la liste. append ajouterait la valeur en fin de liste sans imposer une position précise.

18. Dans une boucle écrite « for indice in range(len(L)) », comment accéder à l’élément parcouru dans la liste L ?

En utilisant len[indice]
En utilisant L[élément]
En utilisant indice[L]
En utilisant L[indice]

En utilisant L[indice]

Explication

Le parcours par indices fournit une position numérique, qui permet d’obtenir l’élément correspondant avec L[indice]. Un parcours direct avec « for élément in L » fournirait déjà les valeurs sans indexation supplémentaire.

19. Quelle opération permet d’obtenir la liste des caractères contenus dans la chaîne a ?

len(a)
list(a)
a.append()
a.pop()

list(a)

Explication

La conversion list(a) transforme la chaîne en une liste de ses caractères. Les chaînes possèdent len(a), mais elles ne disposent pas des méthodes append() et pop() des listes.

20. Dans l’instruction « print(a, b, sep="-") », quel est le rôle de sep ?

Insérer a et b dans des accolades
Choisir le séparateur entre a et b
Transformer a et b en une seule chaîne
Indiquer le nombre de lignes à afficher

Choisir le séparateur entre a et b

Explication

Le paramètre sep définit le texte placé entre les différentes valeurs affichées par print, ici un tiret. Il ne modifie pas les valeurs et ne contrôle pas directement le nombre de lignes produites.

Révisez avec les flashcards

Mémorisez les réponses avec 50 flashcards sur Bases de Python.

Que peut contenir une cellule Python ?

Autant de fonctions qu'on veut.

Avec quel symbole écrit-on un commentaire en Python ?

Avec le symbole #.

Quelle touche exécute tout le script via le menu Run ?

La touche F5.

Voir les flashcards →

Approfondir avec la fiche

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