Skip to main content
IBM Quantum Platform

RuntimeEncoder

class RuntimeEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)

GitHub

Basen: JSONEncoder

JSON-Encoder, der vom Dienst „ IBM Quantum Compute “ verwendet wird.

Diese Klasse wurde für die Verwendung als Teil eines „ IBM Quantum Compute “-Clients entwickelt. Bei der Verwendung als eigenständiges Programm oder außerhalb des regulären Ablaufs des Pakets qiskit_ibm_runtime gibt es keine Garantien hinsichtlich der Sicherheit, Gültigkeit und möglicher Nebenwirkungen. Es wird empfohlen, diese Klasse und ihre Funktionen nur für vertrauenswürdige Eingaben zu verwenden.

Konstruktor für JSONEncoder, mit sinnvollen Voreinstellungen.

Wenn skipkeys false ist, wird unter TypeError versucht, Schlüssel zu kodieren, die nicht str, int, float oder None sind. Wenn skipkeys True ist, werden solche Einträge einfach übersprungen.

Wenn ensure_ascii true ist, wird garantiert, dass die Ausgabe str-Objekte sind, bei denen alle eingehenden Nicht-ASCII-Zeichen escaped sind. Wenn ensure_ascii false ist, kann die Ausgabe Nicht-ASCII-Zeichen enthalten.

Wenn check_circular wahr ist, werden Listen, Dicts und benutzerdefinierte kodierte Objekte während der Kodierung auf zirkuläre Verweise geprüft, um eine unendliche Rekursion zu verhindern (die eine RecursionError verursachen würde). Andernfalls findet keine solche Prüfung statt.

Wenn allow_nan true ist, dann werden NaN, Infinity und -Infinity als solche kodiert. Dieses Verhalten entspricht nicht der JSON-Spezifikation, ist aber mit den meisten JavaScript -basierten Encodern und Decodern vereinbar. Andernfalls ist die Kodierung solcher Floats auf ValueError zu finden.

Wenn sort_keys true ist, wird die Ausgabe von Dictionaries nach Schlüsseln sortiert; dies ist nützlich für Regressionstests, um sicherzustellen, dass JSON-Serialisierungen im täglichen Gebrauch verglichen werden können.

Wenn indent eine nicht-negative ganze Zahl ist, dann werden JSON-Array-Elemente und Objektmitglieder mit dieser Einrückungsebene hübsch gedruckt. Bei einer Einrückungsebene von 0 werden nur Zeilenumbrüche eingefügt. Keine ist die kompakteste Darstellung.

Falls angegeben, sollten die Trennzeichen ein Tupel (item_separator, key_separator) sein. Der Standardwert ist (', ', ': '), wenn der Einzug None ist, und (',', ': ') andernfalls. Um eine möglichst kompakte JSON-Darstellung zu erhalten, sollten Sie (',', ':') angeben, um Leerzeichen zu vermeiden.

Wenn angegeben, ist default eine Funktion, die für Objekte aufgerufen wird, die sonst nicht serialisiert werden können. Es sollte eine JSON-kodierbare Version des Objekts zurückgeben oder eine TypeError auslösen.


Attribute

item_separator

Standardwert: ', '

key_separator

Standardwert: ': '


Methoden

default

default(obj)

GitHub

objGibt ein serialisierbares Objekt zurück.

Parameter

obj (Any)

Rückgabetyp

Beliebig

encode

encode(o)

Gibt eine JSON-String-Darstellung einer Python -Datenstruktur zurück.

>>> from json.encoder import JSONEncoder
>>> JSONEncoder().encode({"foo": ["bar", "baz"]})
'{"foo": ["bar", "baz"]}'

iterencode

iterencode(o, _one_shot=False)

Codiert das angegebene Objekt und liefert jede verfügbare String-Repräsentation.

Zum Beispiel:

for chunk in JSONEncoder().iterencode(bigobject):
    mysocket.write(chunk)
War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.