JSON Python

JSON è una sintassi utilizzata per memorizzare e scambiare dati.

JSON è un testo scritto con la notazione oggetto JavaScript (JavaScript object notation).

JSON in Python

Python ha un nome json il pacchetto built-in, può essere utilizzato per gestire i dati JSON.

Esempio

Importare json Modulo:

import json

Analisi JSON - Convertire JSON in Python

Se esiste una stringa JSON, è possibile usarla json.loads() Metodo per analizzarlo.

Il risultato sarà un dizionario Python.

Esempio

Convertire JSON in Python:

import json
# Alcuni JSON:
x =  '{ "nome":"Bill", "età":63, "città":"Seatle"}'
# Analizzare x:
y = json.loads(x)
# Il risultato è un dizionario Python:
print(y["età"])

Eseguire Esempio

Convertire Python in JSON

Se hai un oggetto Python, puoi usarlo json.dumps() Metodo per convertirlo in una stringa JSON.

Esempio

Convertire Python in JSON:

import json
# Oggetto Python (dizionario):
x = {
  "nome": "Bill",
  "età": 63,
  "città": "Seatle"
}
# Convertire in JSON:
y = json.dumps(x)
# Il risultato è una stringa JSON:
print(y)

Eseguire Esempio

Puoi convertire in stringa JSON i seguenti tipi di oggetti Python:

  • dict
  • list
  • tuple
  • stringa
  • int
  • float
  • True
  • False
  • None

Esempio

Convertire l'oggetto Python in una stringa JSON e stampare il valore:

import json
print(json.dumps({"name": "Bill", "age": 63}))
print(json.dumps(["apple", "bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))

Eseguire Esempio

Quando Python viene convertito in JSON, l'oggetto Python viene convertito in equivalente JSON (JavaScript):

Python JSON
dict Oggetto
list Array
tuple Array
str Stringa
int Numero
float Numero
True vero
False falso
None null

Esempio

Convertire l'oggetto Python che contiene tutti i tipi di dati validi:

import json
x = {
  "nome": "Bill",
  "età": 63,
  "married": Vero,
  "divorced": False,
  "children": ("Jennifer","Rory","Phoebe"),
  "pets": None,
  "cars": [
    {"model": "Porsche", "mpg": 38.2},
    {"model": "BMW M5", "mpg": 26.9}
  ]
}
print(json.dumps(x))

Eseguire Esempio

Formattare i risultati

L'esempio sopra stampa una stringa JSON, ma non è facile da leggere senza indentazione e righe di nuova pagina.

json.dumps() Il metodo fornisce un parametro per rendere i risultati più leggibili:

Esempio

Usare indent Parametro per definire il numero di indentazione:

json.dumps(x, indent=4)

Eseguire Esempio

Puoi anche definire i separatori, il valore predefinito è (", ", ": "), il che significa che ogni oggetto è separato da virgola e spazio, e le chiavi e i valori sono separati da due punti e spazio:

Esempio

Usare separators Parametro per modificare i separatori predefiniti:

json.dumps(x, indent=4, separators=(". ", " = "))

Eseguire Esempio

Ordinare i risultati

json.dumps() Il metodo fornisce un parametro per ordinare le chiavi nei risultati:

Esempio

Usare sort_keys Parametro per specificare se ordinare i risultati:

json.dumps(x, indent=4, sort_keys=True)

Eseguire Esempio