Quiz: Introduction à Python — 30 perguntas

Perguntas e respostas detalhadas

1. Quel est l’extension de fichier typique d’un programme Python exécutable directement depuis l’interpréteur ?

.txt
.class
.py
.ipynb

.py

Explicação

Un fichier Python se termine par l’extension « .py ». Les notebooks IPython utilisent quant à eux « .ipynb ».

2. En quoi IPython se distingue-t-il de l’interpréteur Python standard ?

C’est uniquement une interface de visualisation web
C’est un langage compilé qui génère un fichier .py
C’est un type de données utilisable comme un nombre ou une chaîne
C’est un shell interactif plus avancé avec historique, auto-complétion et édition en ligne

C’est un shell interactif plus avancé avec historique, auto-complétion et édition en ligne

Explicação

IPython est un shell interactif plus avancé que l’interpréteur Python : il propose notamment historique, auto-complétion et édition en ligne. Dire qu’il s’agit d’un type de donnée est une confusion.

3. Quel type Python correspond à l’expression 3.0 ?

Un flottant (float)
Un entier (int)
Un nombre complexe (complex)
Un booléen (bool)

Un flottant (float)

Explicação

En Python, 3.0 correspond à un flottant. Même si sa valeur est entière, elle est bien de type « float ».

4. Quelle opération réalise l’opérateur « // » en Python ?

Une reste de division
Une division entière
Une multiplication
Une puissance

Une division entière

Explicação

L’opérateur « // » réalise une division entière. Le reste est donné par « % », et la puissance par « ** ».

5. Quel résultat obtient-on pour l’expression 3 / 2 en Python 2 ?

2
1
0.5
1.5

1

Explicação

En Python 2, la division de deux entiers comme 3 / 2 donne 1. Si le dénominateur est un flottant (par exemple 2.0), on obtient plutôt 1.5.

6. Pourquoi faut-il importer un module Python avant d’utiliser ses fonctions ?

Parce qu’une fonction d’un module n’est pas disponible sans importation appropriée
Parce que le module est automatiquement chargé dès l’ouverture du fichier
Parce que l’import ne sert qu’à afficher la documentation
Parce que seules les constantes peuvent être utilisées sans import

Parce qu’une fonction d’un module n’est pas disponible sans importation appropriée

Explicação

Un module regroupe des fonctions et des fonctionnalités : pour les utiliser, il doit être importé. Sans importation, les fonctions comme cos ne sont pas disponibles.

7. Une fois le module « math » importé avec « import math », comment accéder à la constante π ?

math::pi
math*pi
math.pi
pi

math.pi

Explicação

Avec « import math », les éléments s’appellent sous la forme « math.pi ». Dire « pi » seul n’est pas suffisant dans ce contexte.

8. À quoi servent les fonctions « dir » et « help » lorsqu’on travaille avec des modules ?

dir supprime les symboles inutilisés et help compresse le code
dir exécute les fonctions du module et help calcule des valeurs
dir renomme un module et help le transforme en notebook
dir liste les symboles disponibles et help affiche la documentation

dir liste les symboles disponibles et help affiche la documentation

Explicação

« dir » liste les symboles disponibles dans un module, tandis que « help » affiche la documentation (générale ou celle d’une fonction). Les autres propositions ne correspondent pas aux rôles décrits.

9. Que fait int(1.5) en Python ?

Il renvoie 1.5 sous forme flottante
Il déclenche une erreur de type
Il renvoie l’entier 1
Il renvoie le complexe 1+0j

Il renvoie l’entier 1

Explicação

int(1.5) convertit 1.5 en entier en donnant 1. L’option sur le flottant et celle sur le complexe ne correspondent pas au comportement de int, et l’erreur n’est pas déclenchée dans ce cas.

10. Quel risque apparaît lorsqu’on convertit un nombre complexe en flottant ?

Aucune erreur n’est possible
Une erreur TypeError peut survenir
La conversion donne automatiquement un entier
La conversion renvoie toujours 0.0

Une erreur TypeError peut survenir

Explicação

La conversion d’un nombre complexe en flottant peut provoquer une erreur TypeError. Les autres réponses confondent la conversion générale des types avec le cas particulier du complexe vers le flottant.

11. Quel est le type Python d’une chaîne de caractères écrite entre apostrophes ou guillemets ?

list
float
str
int

str

Explicação

Une chaîne de caractères (entre apostrophes ou guillemets) a pour type Python str. Les autres options correspondent à d’autres types de données.

12. Dans un slicing u[start:stop], la borne stop est incluse ou exclue ?

Incluse
Exclue uniquement si step vaut 2
Toujours incluse si start est omis
Exclue

Exclue

Explicação

La syntaxe [start:stop] exclut la borne stop. C’est la confusion classique avec l’inclusion de la borne.

13. Si start et stop sont omis dans le slicing, quelle valeur de pas est utilisée par défaut ?

0
1
-1
2

1

Explicação

Dans le slicing [start:stop:step], le pas a une valeur par défaut de 1. Les autres valeurs supposent un pas différent de la valeur par défaut.

14. Pourquoi une liste en Python peut-elle contenir d’autres listes et des éléments de types différents ?

Parce qu’une liste se limite à des éléments d’un seul type
Parce qu’une liste est créée avec des parenthèses et est immuable
Parce qu’une liste ne peut contenir que des nombres
Parce qu’une liste est créée avec des crochets et peut contenir d’autres listes

Parce qu’une liste est créée avec des crochets et peut contenir d’autres listes

Explicação

Une liste est une séquence créée avec des crochets, dont les éléments peuvent être de types différents et qui peut contenir d’autres listes. Les distracteurs évoquent des contraintes qui ne correspondent pas aux listes.

15. Que produit range(10, 30, 2) en Python ?

10, 11, 12, …, 28
10, 12, 14, …, 28
0, 2, 4, …, 28
10, 12, 14, …, 30

10, 12, 14, …, 28

Explicação

range(10, 30, 2) génère des entiers en commençant à 10 et s’arrêtant avant 30, avec un pas de 2. Le distracteur qui inclut 30 confond l’exclusion de stop.

16. Quelle différence existe entre l.sort() et sorted(l) ?

l.sort() trie sur place et renvoie None
l.sort() renvoie une nouvelle liste triée et sorted(l) trie sur place
sorted(l) trie sur place et renvoie None
l.sort() renvoie toujours la liste inchangée

l.sort() trie sur place et renvoie None

Explicação

La méthode l.sort() trie la liste sur place et renvoie None, tandis que sorted(l) renvoie une nouvelle liste triée. Les autres propositions inversent ou déforment ce comportement.

17. Quel énoncé décrit le mieux le comportement d’un tuple après sa création ?

Un tuple est une structure clé-valeur accessible par clé ou indice
Un tuple est une séquence immuable dont les éléments ne peuvent pas être modifiés
Un tuple ne peut contenir qu’une seule valeur et pas plusieurs
Un tuple se modifie par affectation d’un élément à une position

Un tuple est une séquence immuable dont les éléments ne peuvent pas être modifiés

Explicação

Un tuple est une séquence créée avec des parenthèses ou des valeurs séparées par des virgules et il reste immuable après sa création. Il ne permet donc pas l’affectation d’un élément, contrairement aux listes ou à une structure modifiable.

18. Comment accéder à une information stockée dans un dictionnaire ?

En utilisant la clé, et non un indice de position
En utilisant un indice numérique comme pour une liste
En utilisant la valeur associée à une autre clé seulement
En utilisant la position du couple clé-valeur dans la structure

En utilisant la clé, et non un indice de position

Explicação

L’accès à un dictionnaire se fait avec une clé. Les indices de position ne sont pas le mécanisme prévu pour accéder aux éléments d’un dictionnaire.

19. Que se passe-t-il lorsqu’on tente d’accéder à une clé absente d’un dictionnaire ?

Le dictionnaire ignore l’accès et renvoie un tuple vide
Une exception KeyError est levée
La clé manquante est automatiquement créée
Le dictionnaire renvoie None par défaut

Une exception KeyError est levée

Explicação

Accéder à une clé absente d’un dictionnaire provoque une exception KeyError. Les autres propositions correspondent à des comportements qui ne sont pas décrits pour ce cas.

20. Quelle structure Python permet d’exécuter un bloc de code selon la valeur d’expressions booléennes ?

Une structure conditionnelle utilisant if, éventuellement elif, puis else
Une déclaration de fonction avec def
Une boucle while sans condition explicite
Une boucle for qui exécute un bloc exactement une fois

Une structure conditionnelle utilisant if, éventuellement elif, puis else

Explicação

En Python, une structure conditionnelle utilise « if », éventuellement « elif », puis « else » pour choisir le bloc à exécuter. Les autres options décrivent des mécanismes différents.

21. Pourquoi l’indentation est-elle cruciale en Python pour les conditions et les boucles ?

Elle est obligatoire et détermine quelles instructions appartiennent au bloc
Elle remplace la nécessité des mots-clés if et while
Elle détermine uniquement la valeur des variables utilisées dans la condition
Elle sert uniquement à améliorer la lisibilité sans effet sur l’exécution

Elle est obligatoire et détermine quelles instructions appartiennent au bloc

Explicação

L’indentation est obligatoire en Python et elle détermine les instructions qui appartiennent à un bloc conditionnel ou à une boucle. Une mauvaise indentation peut modifier le bloc exécuté ou déclencher une erreur d’indentation.

22. Comment une boucle for se comporte-t-elle en Python lorsqu’elle est utilisée sur une séquence (ou chaîne, liste, dictionnaire) ?

Elle exécute le bloc une seule fois et s’arrête
Elle parcourt les éléments de la séquence
Elle répète un bloc tant qu’une variable de contrôle est vraie sans parcours
Elle ne fonctionne que sur des entiers dans un intervalle

Elle parcourt les éléments de la séquence

Explicação

Une boucle « for » parcourt les éléments d’une séquence, d’une chaîne, d’une liste ou d’un dictionnaire. Elle n’est pas définie ici comme une répétition contrôlée par une condition booléenne de type « while ».

23. Quel principe permet à une boucle while de s’arrêter dans un programme ?

Remplacer la condition par une instruction return à chaque itération
Utiliser une condition basée uniquement sur des chaînes immuables
Faire évoluer ses variables de contrôle pour que la condition devienne fausse
Ne jamais modifier les variables de contrôle pendant la boucle

Faire évoluer ses variables de contrôle pour que la condition devienne fausse

Explicação

Une boucle « while » doit faire évoluer ses variables de contrôle pour que la condition finisse par être fausse et permettre l’arrêt. Sans évolution appropriée, la boucle peut ne pas s’arrêter.

24. Comment définit-on une fonction Python ?

Avec le mot-clé « def », suivi du nom, des paramètres entre parenthèses et de deux-points
Avec le mot-clé « func », suivi du nom et des paramètres entre crochets
En utilisant « return » directement pour déclarer les paramètres
En écrivant « if » puis une condition avant le bloc d’instructions

Avec le mot-clé « def », suivi du nom, des paramètres entre parenthèses et de deux-points

Explicação

Une fonction Python se définit avec « def », son nom, ses paramètres entre parenthèses, puis deux-points. Les autres syntaxes ne correspondent pas à la déclaration d’une fonction en Python.

25. Quel énoncé distingue le rôle de « return » et de « print » dans une fonction ?

« print » renvoie toujours None à l’appelant de façon équivalente à return
« return » sert uniquement à afficher des textes et ne peut pas produire de valeur
« return » affiche seulement à l’écran et ne renvoie rien
« print » affiche, tandis que « return » renvoie une valeur à l’appelant

« print » affiche, tandis que « return » renvoie une valeur à l’appelant

Explicação

L’instruction « return » termine l’exécution et renvoie une valeur à l’appelant, alors que « print » affiche sans renvoyer de valeur. Le piège classique consiste à confondre affichage et renvoi.

26. Une fonction Python peut-elle renvoyer plusieurs valeurs, et comment sont-elles récupérées ?

Non : une fonction ne peut renvoyer qu’une seule valeur à la fois
Oui : les valeurs renvoyées sont converties en chaîne de caractères
Oui : les valeurs renvoyées sont regroupées automatiquement dans un dictionnaire
Oui : plusieurs valeurs sont regroupées dans un tuple puis peuvent être dépaquetées

Oui : plusieurs valeurs sont regroupées dans un tuple puis peuvent être dépaquetées

Explicação

Une fonction peut renvoyer plusieurs valeurs : elles sont regroupées dans un tuple, puis peuvent être dépaquetées dans plusieurs variables. Les autres choix décrivent des regroupements qui ne correspondent pas à ce mécanisme.

27. Que décrit une classe en programmation orientée objet ?

Un mécanisme de gestion d’erreurs qui interrompt directement l’exécution sans bloc de traitement.
Un ensemble d’instructions procédurales sans notion d’attributs ni de méthodes.
Une structure représentant un objet et les opérations réalisables sur celui-ci, avec des attributs et des méthodes.
Une variable globale utilisée par toutes les instances sans référence à l’objet.

Une structure représentant un objet et les opérations réalisables sur celui-ci, avec des attributs et des méthodes.

Explicação

Une classe représente un objet (et ses opérations) via des attributs et des méthodes. Les autres propositions confondent classe avec gestion d’erreurs, variables globales ou code procédural.

28. Dans une méthode de classe, que représente le premier argument nommé « self » ?

Le nom de la classe elle-même
Une auto-référence vers l’instance concernée
Un pointeur vers l’exception en cas d’erreur
Une variable globale accessible depuis tout le programme

Une auto-référence vers l’instance concernée

Explicação

« self » est une auto-référence vers l’instance à laquelle la méthode s’applique. Il ne désigne pas une variable globale et ne renvoie pas directement à une exception.

29. Quand la méthode spéciale « __init__ » est-elle exécutée lors de l’utilisation d’un objet ?

À la création de l’objet
Lorsqu’une erreur est levée et interceptée dans un bloc « except »
À chaque appel d’une méthode ordinaire
Lorsqu’une représentation textuelle de l’objet est demandée

À la création de l’objet

Explicação

« __init__ » est appelée lors de la création de l’objet. À l’inverse, « __str__ » correspond à la demande d’une représentation textuelle.

30. Quelle est la bonne définition d’une exception en programmation ?

Un attribut d’une classe utilisé pour stocker des valeurs globales
Un simple avertissement qui n’affecte pas le déroulement du programme
Une méthode destinée uniquement à convertir un objet en texte
Une erreur qui interrompt l’exécution normale et peut être traitée dans un bloc « try-except »

Une erreur qui interrompt l’exécution normale et peut être traitée dans un bloc « try-except »

Explicação

Une exception est une erreur qui interrompt l’exécution normale et peut être gérée via « try-except ». Les autres choix décrivent des éléments de classes ou des conversions, pas des erreurs interrompant le flux normal.

Revisar com flashcards

Memorize as respostas com 72 flashcards sobre Introduction à Python.

Quelle extension a un fichier Python ?

L'extension .py.

Comment lance-t-on un fichier Python nommé mon_programme.py ?

Avec la commande python mon_programme.py.

Qu'impose la présence du caractère # en début de ligne dans un fichier Python ?

La ligne est un commentaire non exécuté.

Veja os flashcards →

Estude a ficha de revisão

Leia a ficha de revisão completa sobre Introduction à Python.

Veja a ficha de revisão →

Similar courses

Crie seus próprios quizzes

Importe seu curso e a IA gera quizzes com correções em 30 segundos.

Gerador de quizzes