Latest web development tutorials

Analiza danych Python3 JSON

JSON (JavaScript Object Notation) to lekki format wymiany danych. Jest on oparty na podzbiorze ECMAScript.

Moduł json Python3 mogą być wykorzystywane do kodowania i dekodowania danych JSON, który zawiera dwie funkcje:

  • json.dumps (): kodowanie danych.
  • json.loads (): dane są dekodowane.

W procesie json kodeka, Python i json typ prymitywnych typów zostaną zamienione ze sobą, specyficzna kontrola transformacji w następujący sposób:

Python JSON zakodowane w postaci tabeli konwersji typu korespondencji:

pyton JSON
DICT przedmiot
lista, krotka szyk
Str sznur
int, float, INT i unosić pochodzące z wyliczenia liczba
prawdziwy prawdziwy
fałszywy fałszywy
żaden NULL

JSON dekoduje typu Python tabeli korelacji konwersji:

JSON pyton
przedmiot DICT
szyk lista
sznur Str
numer (int) int
numer (real) pływak
prawdziwy prawdziwy
fałszywy fałszywy
NULL żaden

json.dumps i json.loads przykłady

Poniższy przykład pokazuje, struktur danych w Pythonie do 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)

Wykonaj powyższe wyniki wyjściowe Kod:

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

Wyniki można zobaczyć poprzez wyjście, a następnie przez zwykłe rodzaje przez kodowanie swoją wyjściową reprezentujący () wyjście jest bardzo podobne.

Następnie w powyższym przykładzie, możemy przekonwertować ciąg JSON zakodowane z powrotem do struktury danych 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'])

Wykonaj powyższe wyniki wyjściowe Kod:

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

Jeśli chcesz się zajmować jest plik zamiast łańcucha, można użyćjson.dump () i json.load ()do kodowania i dekodowania danych JSON. Na przykład:

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

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

Aby uzyskać więcej informacji, zapoznaj się z: https://docs.python.org/3/library/json.html