analyse des données JSON python3
JSON (JavaScript Object Notation) est un format d'échange de données léger. Il est basé sur un sous-ensemble de ECMAScript.
Python3 module JSON peut être utilisé pour coder et décoder les données JSON, qui contient deux fonctions:
- json.dumps (): codage de données.
- json.loads (): les données sont décodées.
En cours de codec json, python et JSON type de types primitifs sera converti à l'autre, le contrôle de transformation spécifique comme suit:
Python JSON codé comme une table de type conversion de correspondance:
python | JSON |
---|---|
dict | objet |
liste, tuple | tableau |
str | string |
int, float, int & float dérivé Enums | nombre |
vrai | vrai |
faux | faux |
aucun | nul |
JSON décode le type Python tableau de conversion de la correspondance:
JSON | python |
---|---|
objet | dict |
tableau | liste |
string | str |
nombre (int) | int |
nombre (réel) | flotteur |
vrai | vrai |
faux | faux |
nul | aucun |
json.dumps et json.loads exemples
L'exemple suivant illustre les structures de données Python en JSON:
#!/usr/bin/python3 import json # Python 字典类型转换为 JSON 对象 data = { 'no' : 1, 'name' : 'w3big', 'url' : 'https://w3big.com' } json_str = json.dumps(data) print ("Python 原始数据:", repr(data)) print ("JSON 对象:", json_str)
Exécuter les résultats de sortie de code ci-dessus:
Python 原始数据: {'url': 'https://w3big.com', 'no': 1, 'name': 'w3big'} JSON 对象: {"url": "https://w3big.com", "no": 1, "name": "w3big"}
Les résultats peuvent être vus à travers la sortie, suivie par les types simples en codant sa rééd originale () sortie est très similaire.
Ensuite, l'exemple ci-dessus, nous pouvons convertir une chaîne JSON codée retour à une structure de données de Python:
#!/usr/bin/python3 import json # Python 字典类型转换为 JSON 对象 data1 = { 'no' : 1, 'name' : 'w3big', 'url' : 'https://w3big.com' } json_str = json.dumps(data1) print ("Python 原始数据:", repr(data1)) print ("JSON 对象:", json_str) # 将 JSON 对象转换为 Python 字典 data2 = json.loads(json_str) print ("data2['name']: ", data2['name']) print ("data2['url']: ", data2['url'])
Exécuter les résultats de sortie de code ci-dessus:
ython 原始数据: {'name': 'w3big', 'no': 1, 'url': 'https://w3big.com'} JSON 对象: {"name": "w3big", "no": 1, "url": "https://w3big.com"} data2['name']: w3big data2['url']: https://w3big.com
Si vous voulez traiter avec le fichier au lieu d'une chaîne, vous pouvez utiliserjson.dump () et json.load ()pour coder et décoder les données JSON. Par exemple:
# 写入 JSON 数据 with open('data.json', 'w') as f: json.dump(data, f) # 读取数据 with open('data.json', 'r') as f: data = json.load(f)
Pour plus d' informations, s'il vous plaît se référer à: https://docs.python.org/3/library/json.html