Dans cet exercice, vous allez devoir vérifier que la variable prenom est bien une chaîne de caractères.
La variable prenom est définie au début du script par une chaîne de caractère.
Votre script doit vérifier que la variable prenom est bien de type 'chaîne de caractères'.
Si c'est le cas, vous devez assigner la chaîne de caractères "Première vérification réussie." à la variable resultat.
La variable prenom est ensuite redéfinie et assignée au nombre 0.
Vous devez donc tester de nouveau votre condition pour vérifier si la variable prenom contient toujours une chaîne de caractères.
Si c'est le cas, assignez la chaîne de caractères "Deuxième vérification réussie." à la variable resultat.
Pour vérifier le type d'une variable, vous pouvez utiliser la fonction type ou la fonction isinstance.
code Code
prenom = "Pierre"
if type(prenom) == str:
resultat = "Première vérification réussie."
prenom = 0
if isinstance(prenom, str):
resultat = "Deuxième vérification réussie."
comment Explications
Pour vérifier si une variable est d'un certain type, on peut utiliser la fonction type ou la fonction isinstance.
On vérifie une première fois si la variable "prenom" est de type "str", c'est le cas, la chaîne de caractères "Première vérification réussie." est donc bien assignée à la variable resultat.
On a redéfini ensuite la variable prenom pour lui assigner le nombre 0.
On vérifie ensuite une deuxième fois avec la fonction isinstance, que la variable prenom est bien une instance de la classe str.
Cette fois-ci, la variable prenom étant égale à un nombre entier (int), la variable resultat n'est donc pas redéfinie.
Dans un exemple simple comme celui-ci, le résultat est similaire.
Il est cependant préférable d'utiliser la fonction isinstance, car elle fonctionnera également si vous vérifiez le type d'une variable qui hérite d'une classe qui est du type que vous cherchez.
>>> default_dict = {}
>>> type(default_dict) # Notre dictionnaire est bien de type 'dict'
<type 'dict'>
>>> class CustomDict(dict): # On crée une classe custom, qui hérite de la classe 'dict'
... pass
>>> custom_dict = CustomDict()
>>> type(custom_dict)
<class '__main__.CustomDict'>
# Avec la fonction type(), notre dictionnaire custom n'est pas reconnu comme étant de type `dict`
>>> type(custom_dict) == dict
False
# La fonction isinstance en revanche comprend que notre dictionnaire custom hérite de la classe `dict`
>>> isinstance(custom_dict, dict)
True
star Points importants
- Pour vérifier le type d'une variable, on peut utiliser la fonction
typeou la fonctionisinstance. On préfèrera la fonctionisinstancequi gère l'héritage.
prenom = "Pierre" # INSÉREZ LA PREMIÈRE CONDITION # Votre condition doit vérifier si la variable prenom est bien une chaîne de caractère. # Ici c'est le cas, votre condition doit donc être vraie et la variable resultat doit donc être définie. prenom = 0 # INSÉREZ L'AUTRE CONDITION # Cette fois-ci, la variable n'est pas égale à une chaîne de caractère. # Votre condition doit donc être fausse et la variable resultat ne doit donc pas être redéfinie.
prenom = "Pierre"
if type(prenom) == str:
resultat = "Première vérification réussie."
prenom = 0
if isinstance(prenom, str):
resultat = "Deuxième vérification réussie."Console
Un instant...
Résultats
Test de la variable resultat à la fin du script
assert resultat == "Première vérification réussie.", "La variable resultat ne contient pas la bonne valeur."
Bravo, tu as réussi cet exercice de code 🥳
Envoyer ma solution
Vous avez trouvé une solution alternative pour cet exercice ? Proposez votre solution à la communauté 👇
Ma solution :


