Python JSON

JSON er en syntaks til lagring og udveksling af data.

JSON er skrevet som tekst med JavaScript object notation (JavaScript object notation).

JSON i Python

Python har en modul kaldet json den indbyggede pakke, som kan bruges til at håndtere JSON-data.

Eksempel

Importer json Modul:

import json

Analyser JSON - Konverter JSON til Python

Hvis der er en JSON-streng, kan den bruges json.loads() metode til at analysere det.

Resultatet vil være en Python-dictionary.

Eksempel

Konverter JSON til Python:

import json
# Nogle JSON:
x = '{ "name":"Bill", "age":63, "city":"Seatle"}'
# Analyser x:
y = json.loads(x)
# Resultatet er en Python-dictionary:
print(y["age"])

Kør Eksempel

Konverter Python til JSON

Hvis der er et Python-objekt, kan du bruge json.dumps() metode til at konvertere det til JSON-streng.

Eksempel

Konverter Python til JSON:

import json
# Python-objekt (dictionary):
x = {
  "navn": "Bill"
  "alder": 63
  "by": "Seatle"
}
# Konverter til JSON:
y = json.dumps(x)
# Resultatet er en JSON-streng:
print(y)

Kør Eksempel

Du kan konvertere følgende typer af Python-objekter til JSON-streng:

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

Eksempel

Konverter Python-objekt til JSON-streng og udskriv værdien:

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 Eksempel

Når Python konverteres til JSON, konverteres Python-objekter til JSON (JavaScript)-lignende elementer:

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

Eksempel

Konverter Python-objekt, der indeholder alle gyldige datatyper:

import json
x = {
  "navn": "Bill"
  "alder": 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 Eksempel

Formater resultaterne

De ovenstående eksempler printer en JSON-streng, men den er ikke nem at læse uden indrykning og linjeskift.

json.dumps() Metoden tilbyder en parameter til at gøre resultaterne lettere at læse:

Eksempel

Brug indent Parametre definerer indrykning:

json.dumps(x, indent=4)

Kør Eksempel

Du kan også definere separatorer, standardværdien er(", ", ": "),dette betyder at bruge komma og mellemrum til at adskille hver objekt, og bruge kolon og mellemrum til at adskille nøgler fra værdier:

Eksempel

Brug separators Parametre til at ændre standardseparatorer:

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

Kør Eksempel

Sorter resultaterne

json.dumps() Metoden tilbyder en parameter til at sortere nøglerne i resultaterne:

Eksempel

Brug sort_keys Parametre til at specificere om resultaterne skal sorteres:

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

Kør Eksempel