Analyseur et validateur Python JSON

Apprenez à lire, valider, modifier et sérialiser JSON en Python. Maîtrisez la bibliothèque json intégrée avec des exemples réalistes.

Essayez dans l'éditeur

Aperçu

JSON (JavaScript Object Notation) est le format standard d'échange de données sur le Web. Python fournit un puissant module intégré nommé « json » qui traduit les chaînes JSON en dictionnaires Python et vice versa.

Le module expose deux ensembles principaux d'opérations : "loads" et "dumps" pour gérer directement les chaînes JSON, et "load" et "dump" pour écrire ou lire des données directement à partir de flux de fichiers.

Lorsque vous travaillez avec JSON, la gestion des erreurs est essentielle. Python génère une « json.JSONDecodeError » si la syntaxe de la chaîne est rompue, ce qui est essentiel à détecter lors de la consommation de charges utiles à partir d'API publiques.

Sortie de code et d'exécution

Un script démontrant la validation de chaîne JSON, l'analyse de dict, les modifications et une jolie impression.

import json

raw_json = """
{
    "status": "success",
    "data": {
        "user_id": 9042,
        "username": "coder_xyz",
        "roles": ["admin", "developer"],
        "verified": true
    }
}
"""

try:
    # Parsing JSON string into Python dict
    data = json.loads(raw_json)
    print("--- JSON Decoded Successfully ---")
    print(f"Username: {data['data']['username']}")
    print(f"Is Admin: {'admin' in data['data']['roles']}")
    
    # Mutating Python dict
    data['data']['verified'] = False
    data['data']['last_login'] = "2026-05-25"
    
    # Serializing dict back to formatted JSON
    pretty_json = json.dumps(data, indent=4)
    print("\n--- Modified JSON String ---")
    print(pretty_json)
    
except json.JSONDecodeError as e:
    print(f"Invalid JSON Format: {e}")
Sortie terminale
--- JSON Decoded Successfully ---
Username: coder_xyz
Is Admin: True

--- Modified JSON String ---
{
    "status": "success",
    "data": {
        "user_id": 9042,
        "username": "coder_xyz",
        "roles": [
            "admin",
            "developer"
        ],
        "verified": false,
        "last_login": "2026-05-25"
    }
}

Mise en œuvre étape par étape

  • Lecture des configurations d'application et des fichiers d'informations d'identification
  • Analyser les réponses des points de terminaison de l'API REST
  • Enregistrement des états ou des niveaux du programme dans les utilitaires de bureau

Foire aux questions

Quelle est la différence entre dump et dumps en Python ?

`dumps` sérialise un objet dans un format de chaîne JSON, tandis que `dump` écrit le flux JSON sérialisé directement dans un objet fichier inscriptible.

Comment Python gère-t-il les valeurs nulles JSON ?

Le décodeur `json` de Python mappe automatiquement JSON `null` à `None`, `true` et `false` à `True` et `False`, et les tableaux aux listes.

Sujets connexes