jsonyx.dumps¶
- jsonyx.dumps(obj, *, allow=NOTHING, check_circular=True, commas=True, end='\\n', ensure_ascii=False, hook=None, indent=None, indent_leaves=True, max_indent_level=None, quoted_keys=True, separators=(', ', ': '), skipkeys=False, sort_keys=False, trailing_comma=False, types=None)[source]¶
Serialize a Python object to a JSON string.
Changed in version 2.0:
Added
commas,indent_leaves,max_indent_level,quoted_keysandtypes.Made
tupleserializable by default instead ofenum.Enumanddecimal.Decimal.Replaced
item_separatorandkey_separatorwithseparators.
Changed in version 2.1: Added
check_circular,hookandskipkeys.- Parameters:
obj (
object) – a Python objectallow (
Container[str], default:NOTHING) – the JSON deviations fromjsonyx.allowcheck_circular (
bool, default:True) – check for circular referencescommas (
bool, default:True) – separate items by commas when indentedend (
str, default:"\\n") – the string to append at the endensure_ascii (
bool, default:False) – escape non-ASCII charactershook (_Hook |
None, default:None) – the hook used for transforming dataindent (
int|str|None, default:None) – the number of spaces or string to indent withindent_leaves (
bool, default:True) – indent leaf objects and arraysmax_indent_level (
int|None, default:None) – the level up to which to indentquoted_keys (
bool, default:True) – quote keys which are identifiersseparators (
tuple[str,str], default:(", ", ": ")) – the item and key separatorskipkeys (
bool, default:False) – skip non-string keyssort_keys (
bool, default:False) – sort the keys of objectstrailing_comma (
bool, default:False) – add a trailing comma when indentedtypes (
dict[str,type|tuple[type,...]] |None, default:None) – a dictionary of additional types
- Raises:
RecursionError – if the object is too deeply nested
TypeError – for unserializable values
ValueError – for invalid values
- Returns:
str– a JSON string
- Example:
>>> import jsonyx as json >>> json.dumps(["foo", {"bar": ("baz", None, 1.0, 2)}]) '["foo", {"bar": ["baz", null, 1.0, 2]}]\n'
Note
The item separator is automatically stripped when indented.
Warning
Avoid specifying ABCs for
types, that is very slow.