À l'aide de la bibliothèque standard, écrivez une fonction read_object qui lit un objet JSON contenu dans une chaîne de caractères et retourne la valeur associée à la clé donnée en 2e argument, sous la forme d'un objet Python.
Par exemple :
>>> read_object('{"x" : [3, "A"], "a" : [1, 2, null]}', "a")
[1, 2, None]
-
Utilisez
json.loads()pour décoder une chaîne JSON en un objet Python. -
Accédez aux éléments d'un dictionnaire Python avec
data[key]ou utilisezdata.get(key, default)pour une approche plus sûre.
code Code
import json
def read_object(json_string, value):
data = json.loads(json_string)
return data[value]
comment Explications
On commence par importer le module json qui va nous permettre de transformer la chaîne de caractères passée à la fonction en objet Python.
Ici, nous utilisons json.loads(), qui transforme une chaîne de caractères formatée en JSON et la convertit en un dictionnaire Python (ou autre structure selon le contenu JSON).
-
La fonction
json.loads(json_string)convertit la chaînejson_stringen un objet Python. Sijson_stringest une représentation JSON d'un dictionnaire,loadsretourne un dictionnaire Python. -
Une fois le dictionnaire obtenu,
data[valeur]accède à la valeur associée à la clévaleur.
star Points importants
json.loads()est utilisé pour convertir une chaîne JSON en un objet Python.
import json
def read_object(json_string, value):
data = json.loads(json_string)
return data[value]Console
Un instant...
Résultats
Test avec un nombre flottant
assert read_object('{"a" : 5.2, "b" : "28", "c" : [0, true]}', "a") == 5.2, "La valeur associée à 'a' devrait être un flottant 5.2."Test avec une liste associée à la clé recherchée
assert read_object('{"x" : [3, "A"], "a" : [1, 2, null]}', "a") == [1, 2, None], "La valeur associée à 'a' devrait être la liste [1, 2, None]."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 :



