Skip to main content

Attempts to correctly deserialize objects that json decoder cannot.

Project description

json-deserializer

Attempts to deserialize objects into a format that json.dumps/json.loads can use.

  • Anything that is a Sequence, but not a str will be cast to a list.
  • All Mappings will be cast to dicts
  • Decimal to floats
  • Callable to string (will return Object.repr)
  • NamedTuple to dict

Usage Example

    >>> from json import dumps
    >>> from collections import UserDict
    >>> from json_deserializer import deserialize
    >>>
    >>> class MyDict(UserDict):
    >>>     pass
    >>>
    >>> d = MyDict({"foo": "bar"})
    >>> try:
    >>>    dumps(d)
    >>> except Exception as e:
    >>>    print(e)
    Object of type MyDict is not JSON serializable
    >>> dumps(d, default=deserialize)
    '{"foo": "bar"}'

You can also import dump, load, dumps, and loads directly from json_deserializer which will call json.loads, json.dumps with default=json_deserializer.deserialize.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

json-deserializer-0.0.7.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

json_deserializer-0.0.7-py2.py3-none-any.whl (7.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file json-deserializer-0.0.7.tar.gz.

File metadata

  • Download URL: json-deserializer-0.0.7.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

File hashes

Hashes for json-deserializer-0.0.7.tar.gz
Algorithm Hash digest
SHA256 b3180717cdecfc73d7c048447f45e21edd9f64a22f888a567021e1f3ee4fe92f
MD5 4de553e339d8579a3e163950de371fb0
BLAKE2b-256 f764158f40921c8b2ce2464b7c69ef0e23cc99e89b7d9704add4dbc49d70023e

See more details on using hashes here.

File details

Details for the file json_deserializer-0.0.7-py2.py3-none-any.whl.

File metadata

  • Download URL: json_deserializer-0.0.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11

File hashes

Hashes for json_deserializer-0.0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 11cb3dfa15bce460a12c7f242c407e9514100379db10acfb36e814a4ec134d0c
MD5 6f6319640c916e244f9ff3327637f577
BLAKE2b-256 fafc1bc83dbfc5ef398935cdb58bc0545b06af5078f16a3cec2ba7f1949672a8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page