Analyse de données JSON en Python3
JSON (JavaScript Object Notation) est un format léger d'échange de données.
Si vous ne comprenez pas encore JSON, vous pouvez d'abord lire notreTutoriel JSON。
Python3 peut utiliser le module json pour encoder et décoder des données JSON. Il contient deux fonctions :
- json.dumps(): Encoder des données.
- json.loads(): Décoder des données.

Pendant le processus d'encodage/décodage json, les types natifs de Python et les types json sont convertis les uns en les autres. Les correspondances de conversion spécifiques sont les suivantes :
Tableau de correspondance de conversion des types Python vers JSON :
| Python | JSON |
|---|---|
| dict | objet |
| list, tuple | array |
| str | string |
| int, float, énumérations dérivées de int et float | nombre |
| True | vrai |
| False | false |
| Aucune | null |
Table de correspondance de décodage JSON vers les types Python :
| JSON | Python |
|---|---|
| objet | dict |
| array | liste |
| string | str |
| nombre (int) | int |
| nombre (réel) | float |
| vrai | True |
| false | False |
| null | Aucune |
exemples de json.dumps et json.loads
L'exemple suivant montre la conversion de structures de données Python en JSON :
Exemple (Python 3.0+)
L'exécution du code ci-dessus produit le résultat suivant :
Python 原始数据: {'no': 1, 'name': 'Example', 'url': 'https://www.example.com'}
JSON 对象: {"no": 1, "name": "Example", "url": "https://www.example.com"}
D'après le résultat de sortie, on peut voir qu'après l'encodage, les types simples sont très similaires à leur sortie repr() d'origine.
En reprenant l'exemple ci-dessus, nous pouvons reconvertir une chaîne encodée en JSON en une structure de données Python :
Exemple (Python 3.0+)
L'exécution du code ci-dessus produit le résultat suivant :
Python 原始数据: {'name': 'Example', 'no': 1, 'url': 'http://www.example.com'}
JSON 对象: {"name": "Example", "no": 1, "url": "http://www.example.com"}
data2['name']: Example
data2['url']: http://www.example.com
Si vous avez affaire à un fichier plutôt qu'à une chaîne de caractères, vous pouvez utiliserjson.dump()etjson.load()pour encoder et décoder des données JSON. Par exemple :
Exemple (Python 3.0+)
Pour plus d'informations, veuillez consulter :https://docs.python.org/3/library/json.html Autres extensions