X Tutup
Skip to content

Latest commit

 

History

History
151 lines (112 loc) · 3.71 KB

File metadata and controls

151 lines (112 loc) · 3.71 KB
title Module Python JSON - Fiche de Référence Python
description Python dispose du module intégré json, permettant de manipuler les données JSON (JavaScript Object Notation).
Module JSON Python

JSON signifie JavaScript Object Notation et est un format léger pour stocker et transporter des données. JSON est souvent utilisé lorsque des données sont envoyées d'un serveur à une page web.

Python possède le module intégré json, qui nous permet de travailler avec des données JSON.

import json

Types de Données JSON

Un objet JSON est similaire à un dictionnaire Python, mais présente les différences suivantes :

  • Les clés JSON sont toujours des chaînes de caractères (string).
  • Les chaînes de caractères sont toujours entourées de guillemets doubles.
  • Un booléen JSON commence par des lettres minuscules.
  • null est l'équivalent JSON de None en Python.

Les types de données pris en charge par JSON sont :

  • String (Chaîne de caractères)
  • Number (Nombre)
  • boolean (Booléen)
  • null
  • Object (Objet)
  • Array (Tableau)

Exemple :

{
  "name": "Charles",
  "age": 33,
  "has_hair": false,
  "hobbies": ["photography", "running"],
  "appearance": {
    "eyes": "brown",
    "hair_color": null
  }
}

Méthode JSON loads()

Avec la méthode json.loads, vous pouvez analyser un objet JSON et le transformer en un dictionnaire Python :

import json

# Chaîne JSON à analyser
json_person = '{"name": "Charles", "age": 33, "has_hair": false, "hobbies": ["photography", "running"]}'
# Analyse de la chaîne JSON en dictionnaire Python
python_person = json.loads(json_person)
python_person
{'name': 'Charles', 'age': 33, 'has_hair': False, 'hobbies': ['photography', 'running']}
type(python_person)
<class 'dict'>
# Accéder à la valeur du dictionnaire en utilisant la méthode get
python_person.get("name")
'Charles'

Méthode JSON dumps()

Le chemin inverse. La méthode dumps() transforme un objet Python en une chaîne JSON :

import json

# Dictionnaire Python à convertir
python_person = {'name': 'Charles', 'age': 33, 'has_hair': False, 'hobbies': ['photography', 'running']}
# Conversion de l'objet Python en chaîne JSON
json_person = json.dumps(python_person)

json_person
'{"name": "Charles", "age": 33, "has_hair": false, "hobbies": ["photography", "running"]}'
type(json_person)
<class 'str'>

Lecture et Écriture de Fichiers JSON

Lecture d'un Fichier JSON

import json
# Lecture du fichier JSON
with open("filename.json", "r") as f:
    json_content = json.loads(f.read())

# Note : Cette ligne semble redondante - json_content est déjà analysé
json.loads(json_content)
{'name': 'Charles', 'age': 33, 'has_hair': False}

Écriture d'un Fichier JSON

import json

person = {'name': 'Charles', 'age': 33}

# Écriture du dictionnaire Python dans un fichier JSON
with open("filename.json", "w") as f:
    f.write(json.dumps(person))

Liens pertinents

  • Cheatsheet : JSON et YAML
  • Cheatsheet : Dictionnaires
  • Cheatsheet : Lecture et Écriture de Fichiers
  • Blog : Types de Données Python
  • dict()
  • str()
  • open()
X Tutup