QCM : Chaînes de caractères en Python — 15 questions

Questions et réponses du QCM

1. Quelle description correspond à une chaîne de caractères en Python ?

Une collection de nombres stockée dans une variable et séparée par des virgules
Une valeur logique stockée dans une variable et écrite entre parenthèses
Une instruction composée de mots-clés et exécutée par l’interpréteur
Une suite de caractères stockée dans une variable et entourée de guillemets

Une suite de caractères stockée dans une variable et entourée de guillemets

Explication

Une chaîne est une suite de caractères stockée dans une variable et délimitée par des guillemets simples ou doubles. Une collection de nombres séparés par des virgules correspond plutôt à une structure de données comme une liste.

2. Quelle règle doit être respectée pour délimiter correctement une chaîne en Python ?

Les guillemets doivent alterner entre chaque caractère écrit
Le guillemet d’ouverture doit être placé après le contenu
Le guillemet de fermeture doit être remplacé par une parenthèse
Le guillemet de fermeture doit correspondre à celui d’ouverture

Le guillemet de fermeture doit correspondre à celui d’ouverture

Explication

Une chaîne correctement délimitée commence et se termine avec le même type de guillemet. Utiliser deux délimiteurs différents empêche Python d’identifier correctement la fin de la chaîne.

3. Quelle expression assemble correctement deux chaînes avec un espace entre elles ?

"Bonjour" + " " + "Alice"
"Bonjour" len(" ") "Alice"
"Bonjour" * " " * "Alice"
"Bonjour" in " " in "Alice"

"Bonjour" + " " + "Alice"

Explication

L’opérateur + concatène les chaînes, et la chaîne contenant un espace permet de séparer les deux mots. La fonction len() mesure une longueur, tandis que l’opérateur in teste une présence.

4. Quelle instruction permet de connaître le nombre de caractères contenus dans la variable a ?

len(a)
for caractère in a
a in a
a + a

len(a)

Explication

La fonction len⁡(a)\operatorname{len}(a) renvoie le nombre de caractères de la chaîne a. L’opérateur + construit une chaîne assemblée, tandis qu'in vérifie une présence.

5. Quelle construction permet de traiter successivement chaque caractère d’une chaîne appelée mot ?

mot = caractère in
len caractère de mot
if caractère + mot
for caractère in mot

for caractère in mot

Explication

Une chaîne est itérable, donc une boucle for associée au mot-clé in parcourt ses caractères successifs. La fonction len() fournit une longueur et ne réalise pas ce parcours.

6. Quel caractère est obtenu avec l’expression mot[0] lorsque mot vaut "Python" ?

y
P
n
o

P

Explication

L’indexation des caractères d’une chaîne commence à l’indice 0, donc mot[0] désigne le premier caractère, P. La lettre y correspond à l’indice 1 et les autres choix à des positions plus éloignées.

7. Quelle affirmation décrit correctement le test "i" in "Paris" ?

Il renvoie False, car l’opérateur in compare seulement les chaînes vides
Il renvoie True, car la chaîne contient la lettre minuscule i
Il renvoie True, car la recherche ignore les différences de casse
Il renvoie False, car une chaîne doit contenir une sous-chaîne complète

Il renvoie True, car la chaîne contient la lettre minuscule i

Explication

L’opérateur in vérifie la présence d’un caractère ou d’une sous-chaîne en respectant la casse, et Paris contient bien la lettre minuscule i. Une recherche portant sur I majuscule pourrait donner un résultat différent.

8. Dans l’expression `ma_chaine[0:4]`, quels caractères sont sélectionnés ?

Les caractères d’indices 0, 1, 2, 3 et 4
Les caractères d’indices 1, 2, 3 et 4
Les caractères situés après l’indice 4
Les caractères d’indices 0, 1, 2 et 3

Les caractères d’indices 0, 1, 2 et 3

Explication

Une tranche inclut l’indice de début et exclut l’indice de fin, donc les indices sélectionnés sont 0 à 3. L’indice 4 sert de limite et n’est pas intégré au résultat.

9. Quelle instruction remplace toutes les occurrences de « chat » par « chien » dans la chaîne `phrase` ?

phrase.upper('chat', 'chien')
phrase.split('chat', 'chien')
phrase[chat:chien]
phrase.replace('chat', 'chien')

phrase.replace('chat', 'chien')

Explication

La méthode `replace` reçoit le texte recherché puis le texte de remplacement et renvoie la chaîne modifiée. `split` découpe une chaîne, tandis que `upper` change sa casse et que la notation par indices ne remplace pas un texte.

10. Que renvoie l’expression `"rouge-vert-bleu".split('-')` ?

Une liste contenant « rouge », « vert » et « bleu »
Une liste contenant les mots avec leurs tirets
Une chaîne unique contenant les trois mots séparés
Une chaîne où chaque mot est remplacé par un autre

Une liste contenant « rouge », « vert » et « bleu »

Explication

`split('-')` découpe la chaîne chaque fois qu’elle rencontre le séparateur `-` et renvoie une liste de chaînes. La méthode `replace`, et non `split`, conserve une chaîne en effectuant un remplacement.

11. Quelle transformation produit `texte.lower()` et `texte.upper()` ?

La première met les lettres en majuscules et la seconde en minuscules
Les deux méthodes remplacent les caractères non alphabétiques
La première met les lettres en minuscules et la seconde en majuscules
Les deux méthodes découpent le texte selon les espaces

La première met les lettres en minuscules et la seconde en majuscules

Explication

`lower()` convertit les caractères alphabétiques en minuscules, tandis que `upper()` les convertit en majuscules. Ces méthodes agissent sur la casse et ne servent ni à découper ni à remplacer le contenu.

12. Laquelle de ces propositions respecte les règles du mot caché du Mastermind décrit ici ?

AB12C
ABCDE
ABCDA
ABCD

ABCDA

Explication

Le mot doit comporter cinq lettres, chacune choisie parmi A, B, C et D ; `ABCDA` respecte donc les deux contraintes. `ABCDE` contient E, `AB12C` contient des chiffres et `ABCD` ne comporte que quatre caractères.

13. Quel enchaînement correspond au déroulement prévu d’une partie de Mastermind ?

Compter les correspondances, tirer un mot, demander une proposition, puis arrêter la partie
Tirer un mot, proposer de continuer, compter les correspondances, puis vérifier la proposition
Tirer un mot, demander une proposition valide, compter les correspondances, puis proposer de continuer
Demander une proposition, tirer un mot, proposer de continuer, puis compter les correspondances

Tirer un mot, demander une proposition valide, compter les correspondances, puis proposer de continuer

Explication

Le déroulement commence par le tirage du mot, puis vérifie une proposition valide, calcule les lettres bien et mal placées et demande enfin si la partie continue. Les autres séquences placent ces étapes dans un ordre incompatible avec le fonctionnement décrit.

14. Quelle méthode permet à `mot_aleatoire()` de construire un mot de cinq lettres à partir de `"ABCD"` ?

Tirer cinq caractères entre A et D sans passer par des indices
Tirer cinq indices aléatoires entre 0 et 3, puis utiliser les caractères correspondants
Tirer quatre indices entre 0 et 3, puis ajouter une lettre choisie dans `"ABCD"`
Tirer cinq indices aléatoires entre 1 et 5, puis utiliser les caractères correspondants

Tirer cinq indices aléatoires entre 0 et 3, puis utiliser les caractères correspondants

Explication

Les caractères de `"ABCD"` occupent les indices 0 à 3 ; cinq tirages dans cet intervalle permettent donc de construire un mot de cinq lettres. L’intervalle 1 à 5 contient un indice hors de cette chaîne et ne correspond pas à ses positions valides.

15. Comment la fonction d’étude doit-elle déterminer les deux compteurs d’une proposition au Mastermind ?

Comparer d’abord les mêmes positions, puis chercher les lettres communes restantes à d’autres positions
Chercher d’abord toutes les lettres communes, puis comparer les positions des lettres trouvées
Comparer uniquement les caractères placés aux mêmes positions et ignorer les autres lettres
Compter d’abord les lettres différentes, puis soustraire celles qui apparaissent dans le mot caché

Comparer d’abord les mêmes positions, puis chercher les lettres communes restantes à d’autres positions

Explication

La fonction traite d’abord les caractères correctement placés, puis examine les lettres communes restantes mais déplacées, avant de renvoyer les deux compteurs séparés par une virgule. Chercher les lettres communes avant les positions risque de compter incorrectement les correspondances.

Révisez avec les flashcards

Mémorisez les réponses avec 34 flashcards sur Chaînes de caractères en Python.

Qu'est-ce qu'une chaîne de caractères en Python ?

Une suite de caractères stockée dans une variable et délimitée par des guillemets simples ou doubles.

Quelle règle s'applique aux guillemets ouvrant et fermant une chaîne ?

Ils doivent être identiques.

Comment concatène-t-on deux chaînes en Python ?

Avec l'opérateur +.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Chaînes de caractères en 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