Latest web development tutorials

Python3 JSON Datenanalyse

JSON (JavaScript Object Notation) ist ein leichtgewichtiges Datenaustauschformat. Es basiert auf einer Untergruppe von ECMAScript.

Python3 json Modul kann verwendet werden, zu codieren und JSON Daten dekodieren, die zwei Funktionen:

  • json.dumps (): Daten kodiert.
  • json.loads (): Daten werden decodiert.

In json Codec Prozess, Python und json Art von primitiven Typen werden miteinander umgesetzt werden, die spezifische Transformation Steuerung wie folgt:

Python JSON als eine Art Umwandlung Korrespondenztabelle ausgewertet:

Python JSON
dict Objekt
Liste, Tupel Feld
str Schnur
int, float, int- & Float-derived Aufzählungen Anzahl
wahr wahr
falsch falsch
keiner nichtig

JSON decodiert die Tabelle Korrespondenz Python Typ-Konvertierung:

JSON Python
Objekt dict
Feld Liste
Schnur str
Nummer (int) int
Zahl (real) Schwimmer
wahr wahr
falsch falsch
nichtig keiner

json.dumps und json.loads Beispiele

Das folgende Beispiel zeigt Python-Datenstrukturen 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)

Führen Sie die oben genannten Code Ausgabeergebnisse:

Python 原始数据: {'url': 'http://www.w3big.com', 'no': 1, 'name': 'w3big'}
JSON 对象: {"url": "http://www.w3big.com", "no": 1, "name": "w3big"}

Die Ergebnisse können durch die Ausgangs zu sehen ist, durch die einfache Typen gefolgt von seiner ursprünglichen repr kodieren () -Ausgabe ist sehr ähnlich.

Dann wird das obige Beispiel, können wir eine JSON-codierte Zeichenfolge zurück in eine Python-Datenstruktur zu konvertieren:

#!/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'])

Führen Sie die oben genannten Code Ausgabeergebnisse:

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

Wenn Sie behandeln wollen , ist die Datei anstelle einer Zeichenfolge, können Siejson.dump () und json.load ()zu kodieren und zu dekodieren JSON - Daten. Zum Beispiel:

# 写入 JSON 数据
with open('data.json', 'w') as f:
    json.dump(data, f)

# 读取数据
with open('data.json', 'r') as f:
    data = json.load(f)

Weitere Informationen finden Sie unter: https://docs.python.org/3/library/json.html