analisi dei dati python3 JSON
JSON (JavaScript Object Notation) è un formato di interscambio di dati leggero. Si basa su un sottoinsieme di ECMAScript.
Modulo JSON python3 può essere usato per codificare e decodificare i dati JSON, che contiene due funzioni:
- json.dumps (): codifica dei dati.
- json.loads (): i dati vengono decodificati.
Nel processo di codec JSON, pitone e JSON tipo di tipi primitivi verrà convertito in un l'altro, il controllo trasformazione specifica come segue:
Python JSON codificato come una tabella di tipo di conversione corrispondenza:
pitone | JSON |
---|---|
dict | oggetto |
list, tuple | schieramento |
str | stringa |
int, float, INT e float-derivato Enums | numero |
vero | vero |
falso | falso |
nessuno | nullo |
JSON decodifica il tipo di Python tabella di conversione corrispondenza:
JSON | pitone |
---|---|
oggetto | dict |
schieramento | lista |
stringa | str |
numero (int) | int |
numero (reale) | galleggiante |
vero | vero |
falso | falso |
nullo | nessuno |
json.dumps e json.loads esempi
L'esempio seguente mostra le strutture dati Python in 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)
Eseguire i risultati di output di codice di cui sopra:
Python 原始数据: {'url': 'http://www.w3big.com', 'no': 1, 'name': 'w3big'} JSON 对象: {"url": "http://www.w3big.com", "no": 1, "name": "w3big"}
I risultati possono essere visti attraverso l'uscita, seguito dai tipi semplici codificando sua uscita repr originale () è molto simile.
Poi l'esempio precedente, siamo in grado di convertire una stringa JSON-codificato tornare a una struttura dati 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'])
Eseguire i risultati di output di codice di cui sopra:
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
Se si vuole affrontare è il file invece di una stringa, è possibile utilizzarejson.dump () e json.load ()per codificare e decodificare i dati JSON. Ad esempio:
# 写入 JSON 数据 with open('data.json', 'w') as f: json.dump(data, f) # 读取数据 with open('data.json', 'r') as f: data = json.load(f)
Per ulteriori informazioni, si prega di fare riferimento a: https://docs.python.org/3/library/json.html