Latest web development tutorials

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' : 'http://www.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': 'http://www.w3big.com', 'no': 1, 'name': 'w3big'}
JSON 对象: {"url": "http://www.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' : 'http://www.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': 'http://www.w3big.com'}
JSON 对象: {"name": "w3big", "no": 1, "url": "http://www.w3big.com"}
data2['name']:  w3big
data2['url']:  http://www.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