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

ベース: JSONEncoder

ランタイム・サービスが使用するJSONエンコーダ。

JSONEncoderのコンストラクタ。

skipkeysがfalseの場合、str、int、float、Noneでないキーのエンコードを試みるのは TypeError。 skipkeys が True の場合、そのような項目は単にスキップされる。

secure_asciiがtrueの場合、入力される非ASCII文字がすべてエスケープされたstrオブジェクトが出力されることが保証される。 secure_asciiがfalseの場合、出力に非ASCII文字を含めることができる。

check_circularがtrueの場合、リスト、ディク ト、カスタム・エンコードされたオブジェクトはエンコード中に循環 参照をチェックされ、無限再帰( RecursionError )を防ぐ。 そうでなければ、そのようなチェックは行われない。

allow_nan がtrueの場合、 NaN, Infinity, -Infinityはそのようにエンコードされる。 この動作はJSON仕様に準拠していないが、ほとんどの JavaScript ベースのエンコーダーとデコーダーと一致している。 そうでなければ、このような浮動小数点数をエンコードするのは ValueError。

sort_keysがtrueの場合、辞書の出力はキーでソートされる。これは、JSONシリアライゼーションが日常的に比較できることを保証する回帰テストに役立つ。

インデントが負でない整数の場合、JSON配列の要素とオブジェクトのメンバは、そのインデントレベルでプリティプリントされます。 インデントレベルを0にすると、改行のみが挿入される。 最もコンパクトな表現はない。

指定された場合、separatorsは(item_separator, key_separator)タプルになる。 デフォルトは、 インデントが None の場合は (', ', ': ')、それ以外の場合は (',', ': ')である。 最もコンパクトなJSON表現を得るには、(',', ':') を指定して空白をなくすべきである。

指定された場合、defaultはシリアライズできないオブジェクトに対して呼び出される関数です。 オブジェクトのJSONエンコード可能バージョンを返すか、 TypeError


属性

item_separator

デフォルト値: ', '

key_separator

デフォルト値: ': '


方法

default

default(obj)

GitHub

obj. に対してシリアライズ可能なオブジェクトを返す。

パラメーター

obj (Any)

戻りの型

任意

encode

encode(o)

Python データ構造の JSON 文字列表現を返す。

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

iterencode

iterencode(o, _one_shot=False)

与えられたオブジェクトをエンコードし、利用可能な各文字列表現を返す。

例:

for chunk in JSONEncoder().iterencode(bigobject):
    mysocket.write(chunk)
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。