Python JSON

JSON är en syntax för att lagra och utbyta data.

JSON är skrivet i JavaScript Object Notation (JSON).

JSON i Python

Python har en modul som kallas json inbyggda paket, kan användas för att hantera JSON-data.

Exempel

Importera json Modul:

import json

Analysera JSON - Konvertera JSON till Python

Om det finns en JSON-sträng, kan den användas json.loads() metoden för att analysera den.

Resultatet kommer att vara en Python-ordbok.

Exempel

Konvertera JSON till Python:

import json
# Några JSON:
x = '{ "name":"Bill", "age":63, "city":"Seatle"}'
# Analysera x:
y = json.loads(x)
# Resultatet är en Python-ordbok:
print(y["age"])

Kör Exempel

Konvertera Python till JSON

Om det finns ett Python-objekt kan json.dumps() metoden för att konvertera till JSON-sträng.

Exempel

Konvertera Python till JSON:

import json
# Python-objekt (ordbok):
x = {
  "namn": "Bill",
  "ålder": 63,
  "city": "Seatle"
}
# Konvertera till JSON:
y = json.dumps(x)
# Resultatet är en JSON-sträng:
print(y)

Kör Exempel

Du kan konvertera följande typer av Python-objekt till JSON-sträng:

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

Exempel

Konvertera Python-objekt till JSON-sträng och skriv ut värdet:

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))

Kör Exempel

När Python konverteras till JSON kommer Python-objekt att konverteras till JSON (JavaScript)-ekvivalent:

Python JSON
dict Object
list Array
tuple Array
str String
int Number
float Number
True true
False false
None null

Exempel

Konvertera Python-objekt som innehåller alla giltiga datatyper:

import json
x = {
  "namn": "Bill",
  "ålder": 63,
  "gifted": True,
  "divorced": False,
  "children": ("Jennifer","Rory","Phoebe"),
  "pets": None,
  "cars": [
    {"model": "Porsche", "mpg": 38.2},
    {"model": "BMW M5", "mpg": 26.9}
  ]
}
print(json.dumps(x))

Kör Exempel

Formatera resultatet

Ovanstående exempel skriver ut en JSON-sträng, men den är inte lätt att läsa utan indrag och radbrytningar.

json.dumps() Metoden erbjuder parametrar för att göra resultatet mer läsbart:

Exempel

Använd indent Parametrar definierar indenteringsantalet:

json.dumps(x, indent=4)

Kör Exempel

Du kan också definiera separatorn, standardvärdet är(", ", ": "),vilket innebär att använda komma och utrymme för att separera varje objekt, och använda kolon och utrymme för att skilja mellan nyckel och värde:

Exempel

Använd separators Parametrar för att ändra standardseparatorn:

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

Kör Exempel

Sortera resultatet

json.dumps() Metoden erbjuder en parameter för att sortera nycklarna i resultatet:

Exempel

Använd sort_keys Parametrar för att specificera om resultatet ska sorteras:

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

Kör Exempel