Définit le type de document
Dans ce tutoriel, vous apprendrez à analyser, lire et écrire du JSON en Python à l'aide d'exemples. Vous apprendrez également à convertir JSON en dict et à afficher les données qu'il contient.
JSON (JavaScript Object Notation) est un format de données populaire utilisé pour représenter des données structurées. Il est courant de transmettre et de recevoir des données entre un serveur et une application Web au format JSON.
En Python, JSON existe sous la forme d'une chaîne de caractères.
import json
#main.py import json personne = '{"nom": "Bakr", "langues": ["Anglais", "Français"]}' personne_dict = json.loads(personne) print( personne_dict) print(f"Nom : {personne_dict['nom']}") print(f"Langues : {personne_dict['langues']}")La sortie du code cidessus sera comme suit:
{'nom': 'Bakr', 'langues': ['Anglais', 'Français']} Nom : Bakr Langues : ['Anglais', 'Français']Ici, personne est une chaîne JSON, et personne_dict est un dictionnaire.
#main.py import json with open('chemin d'acces du fichier/personne.json', 'r') as f: data = json.load(f) print(data)Le code ci-dessus retourne ce qui suit:
{'nom': 'Bakr', 'languages': ['Anglais', 'Français']}Dans ce cas, la fonction open() a été utilisée pour lire le fichier json. Puis, l'analyse du fichier est effectuée à l'aide de la méthode json.load() pour obtenir comme résultat un dictionnaire nommé data, que on a affiché à l'écran.
import json personne_dict = {"nom": "Bakr", "age": 35, "marié" : True, "divorcé" : False, "enfants" : ("Anne", "Sofie"), "animaux de compagnie" : None, "voitures" : [ {"modèle" : "BMW 230", "consomation" : 7.5}, {"modèle" : "Ford Edge", "consomation" : 10.1} ] } personne_json = json.dumps(personne_dict) print(personne_json)La sortie est:
{"nom": "Bakr", "age": 35, "mari\u00e9": true, "divorc\u00e9": false, "enfants": ["Anne", "Sofie"], "animaux de compagnie": null, "voitures": [{"mod\u00e8le": "BMW 230", "consomation": 7.5}, {"mod\u00e8le": "Ford Edge", "consomation": 10.1}]}
import json personne_dict = {"nom": "Bakr", "age": 35, "statut" : "marié", "enfants" : ("Anne", "Sofie"), "animaux de compagnie" : None, "voitures" : [ {"modèle" : "BMW 230", "consomation" : 7.5}, {"modèle" : "Ford Edge", "consomation" : 10.1} ] } personne_json = json.dumps(personne_dict, indent=4) print(personne_json)Le résultat est comme suit:
{ "nom": "Bakr", "age": 35, "statut" : "marié", "enfants": [ "Anne", "Sofie" ], "animaux de compagnie": null, "voitures": [ { "modéle": "BMW 230", "consomation": 7.5 }, { "modéle": "Ford Edge", "consomation": 10.1 } ] }Vous pouvez aussi définir les séparateurs, la valeur par défaut est (", ", " : "), ce qui signifie utiliser une virgule et un espace pour séparer chaque objet, et deux points et un espace pour séparer les clés des valeurs :
import json personne_dict = {"nom": "Bakr", "age": 35, "statut" : "marié", "enfants" : ("Anne", "Sofie"), "animaux de compagnie" : None, "voitures" : [ {"modèle" : "BMW 230", "consomation" : 7.5}, {"modèle" : "Ford Edge", "consomation" : 10.1} ] } personne_json = json.dumps(personne_dict, indent=4, separators=(". ", " = ")) print(personne_json)
{ "nom" = "Bakr". "age" = 35. "statut" = "marié". "enfants" = [ "Anne". "Sofie" ]. "animaux de compagnie" = null. "voitures" = [ { "modéle" = "BMW 230". "consomation" = 7.5 }. { "modéle" = "Ford Edge". "consomation" = 10.1 } ] }
personne_json = json.dumps(personne_dict, indent=4, separators=(". ", " = "), sort_keys=True) print(personne_json)Le résultat sera comme suit :
{ "age" = 35. "animaux de compagnie" = null. "enfants" = [ "Anne". "Sofie" ]. "nom" = "Bakr". "statut" = "mari\u00e9". "voitures" = [ { "consomation" = 7.5. "mod\u00e8le" = "BMW 230" }. { "consomation" = 10.1. "mod\u00e8le" = "Ford Edge" } ] }
import json # Les données à écrire dictionnaire = { "nom": "bakr", "age": 56, "Nbr enfants": 2, "phone": "9976770500" } # Sérialisation du json json_object = json.dumps(dictionnaire , indent=4) # Écriture dans le fichier exemple.json with open("exemple.json", "w") as outfile: outfile.write(json_object)Dans cet exemple le dictionnaire python est transformé en json par la méthode dumps().
import json # Les données à écrire dictionnaire = { "nom": "bakr", "age": 56, "Nbr enfants": 2, "phone": "9976770500" } # Écriture dans le fichier exemple.json with open("exemple.json", "w") as outfile: json.dump(dictionnaire, outfile)