logo

json.dumps() in Python

JSON ist ein Akronym, das für JavaScript Object Notation steht. Trotz seines Namens ist JSON ein sprachunabhängiges Format, das am häufigsten zum Übertragen von Daten zwischen Systemen und gelegentlich zum Speichern von Daten verwendet wird. In Python und vielen anderen Programmiersprachen geschriebene Programme können JSON-formatierte Daten aufnehmen und Daten im Speicher in das JSON-Format serialisieren. Python unterstützt JSON über ein integriertes Paket namens json. Um diese Funktion zu nutzen, importieren Sie das JSON-Paket in das Python-Skript oder Modul, in dem Sie Ihre Daten serialisieren oder deserialisieren möchten. JSON verwendet durch Kommas getrennte Schlüsselwertpaare, die in doppelten Anführungszeichen stehen und durch Doppelpunkte getrennt sind. Der Hauptteil einer JSON-Datei kann durch geschweifte Klammern {} oder eckige Klammern [] (in einigen Gebietsschemata auch als Klammern bezeichnet) begrenzt werden. Das JSON-Format scheint dem Wörterbuch in Python zu ähneln, die Besonderheiten des JSON-Formats weisen jedoch erhebliche Unterschiede auf. Seien Sie daher vorsichtig, wenn Sie mit beiden Formaten arbeiten.

Notiz: Weitere Informationen finden Sie unter Lesen, Schreiben und analysieren Sie JSON mit Python



Json.dumps()

Die Funktion json.dumps() konvertiert eine Teilmenge von Python-Objekten in einen JSON-String. Nicht alle Objekte sind konvertierbar und Sie müssen möglicherweise ein Wörterbuch der Daten erstellen, die Sie verfügbar machen möchten, bevor Sie sie in JSON serialisieren.

Syntax:
json.dumps(obj, *, skipkeys=False, secure_ascii=True, check_circular=True,allow_nan=True, cls=Keine, indent=Keine, Separatoren=Keine, default=Keine, sort_keys=False, **kw)
Parameter:
Objekt: Serialisieren Sie obj als JSON-formatierten Stream
Tasten überspringen: Wenn „skipkeys“ „True“ ist (Standard: „False“), werden Diktschlüssel, die nicht einem Basistyp (str, int, float, bool, None) angehören, übersprungen, anstatt einen TypeError auszulösen.
gewährleisten_ascii: Wenn „sure_ascii“ „True“ ist (Standardeinstellung), werden in der Ausgabe garantiert alle eingehenden Nicht-ASCII-Zeichen mit Escapezeichen versehen. Wenn „sure_ascii“ „False“ ist, werden diese Zeichen unverändert ausgegeben.
check_circular: Wenn check_circular False ist (Standard: True), wird die Zirkelverweisprüfung für Containertypen übersprungen und ein Zirkelverweis führt zu einem OverflowError (oder Schlimmerem).
erlauben_in: Wenn „allow_nan“ den Wert „Falsch“ hat (Standard: „True“), handelt es sich um einen „ValueError“, um Float-Werte außerhalb des Bereichs (nan, inf, -inf) unter strikter Einhaltung der JSON-Spezifikation zu serialisieren. Wenn „allow_nan“ True ist, werden ihre JavaScript-Äquivalente (NaN, Infinity, -Infinity) verwendet.
Einzug: Wenn indent eine nicht negative Ganzzahl oder Zeichenfolge ist, werden JSON-Array-Elemente und Objektmitglieder mit dieser Einrückungsebene hübsch gedruckt. Bei einer Einrückungsstufe von 0, negativ oder werden nur Zeilenumbrüche eingefügt. „Keine“ (Standardeinstellung) wählt die kompakteste Darstellung aus. Durch die Verwendung eines positiven Ganzzahleinzugs werden pro Ebene entsprechend viele Leerzeichen eingerückt. Wenn indent eine Zeichenfolge ist (z. B. ), wird diese Zeichenfolge zum Einrücken jeder Ebene verwendet.
Trennzeichen: Falls angegeben, sollten Trennzeichen ein (item_separator, key_separator)-Tupel sein. Der Standardwert ist (‘, ‘, ‘: ‘), wenn der Einzug None ist, andernfalls (‘, ‘, ‘: ‘). Um die kompakteste JSON-Darstellung zu erhalten, sollten Sie (‘, ‘, ‘:’) angeben, um Leerzeichen zu eliminieren.
Standard: Falls angegeben, sollte die Standardfunktion eine Funktion sein, die für Objekte aufgerufen wird, die sonst nicht serialisiert werden können. Es sollte eine JSON-kodierbare Version des Objekts zurückgeben oder einen TypeError auslösen. Wenn nicht angegeben, wird TypeError ausgelöst.
sort_keys: Wenn sort_keys True ist (Standard: False), wird die Ausgabe von Wörterbüchern nach Schlüssel sortiert.

Beispiel 1: Wenn Sie das Python-Wörterbuch an die Funktion json.dumps() übergeben, wird eine Zeichenfolge zurückgegeben.



Python3






import> json> # Creating a dictionary> Dictionary>=>{>1>:>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>}> > # Converts input dictionary into> # string and stores it in json_string> json_string>=> json.dumps(Dictionary)> print>(>'Equivalent json string of input dictionary:'>,> >json_string)> print>(>' '>)> # Checking type of object> # returned by json.dumps> print>(>type>(json_string))>

>

>

Ausgabe

Äquivalente JSON-Zeichenfolge des Wörterbuchs: {1: Welcome, 2: to, 3: Geeks, 4: for, 5: Geeks}

Was sind 10 von 1 Million?

Beispiel #2: Indem wir die Skipkeys auf True (Standard: False) setzen, überspringen wir automatisch die Schlüssel, die nicht vom Basistyp sind.

Python3




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>}> # Our dictionary contains tuple> # as key, so it is automatically> # skipped If we have not set> # skipkeys = True then the code> # throws the error> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

Rajinikanth
>

Ausgabe

Äquivalente JSON-Zeichenfolge des Wörterbuchs: {2: to, 3: Geeks, 4: for, 5: Geeks}

Beispiel #3:

Python3




import> json> # We are adding nan values> # (out of range float values)> # in dictionary> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # If we hadn't set allow_nan to> # true we would have got> # ValueError: Out of range float> # values are not JSON compliant> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Ausgabe :

Äquivalente JSON-Zeichenfolge des Wörterbuchs: {2: to, 3: Geeks, 4: for, 5: Geeks, 6: NaN}

Beispiel #4:

Python3




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # Indentation can be used> # for pretty-printing> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>,> >indent>=> 6>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

Laptop-Einsteckschlüssel
>

>

Ausgabe:

Equivalent json string of dictionary: { '2': 'to', '3': 'Geeks', '4': 'for', '5': 'Geeks', '6': NaN }>

Beispiel #5:

Python3




import> json> Dictionary>=>{(>1>,>2>,>3>):>'Welcome'>,>2>:>'to'>,> >3>:>'Geeks'>,>4>:>'for'>,> >5>:>'Geeks'>,>6>:>float>(>'nan'>)}> # If specified, separators should be> # an (item_separator, key_separator)tuple> # Items are separated by '.' and key,> # values are separated by '='> json_string>=> json.dumps(Dictionary,> >skipkeys>=> True>,> >allow_nan>=> True>,> >indent>=> 6>,> >separators>=>(>'. '>,>' = '>))> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Ausgabe:

Was ist Jquery?
Equivalent json string of dictionary: { '2' = 'to'. '3' = 'Geeks'. '4' = 'for'. '5' = 'Geeks'. '6' = NaN }>

Beispiel #6:

Python3




import> json> Dictionary>=>{>'c'>:>'Welcome'>,>'b'>:>'to'>,> >'a'>:>'Geeks'>}> json_string>=> json.dumps(Dictionary,> >indent>=> 6>,> >separators>=>(>'. '>,>' = '>),> >sort_keys>=> True>)> print>(>'Equivalent json string of dictionary:'>,> >json_string)>

>

>

Ausgabe:

Equivalent json string of dictionary: { 'a' = 'Geeks'. 'b' = 'to'. 'c' = 'Welcome' }>