Flatten / Unflatten and Loads / Dumps JSON object with Duplicate Keys
Project description
JSON Duplicate Keys
Flatten / Unflatten and Loads / Dumps JSON object with Duplicate Keys
Installation
pip install json-duplicate-keys
Usage
>>> import json_duplicate_keys
>>>
>>> Jstr = '{"author": "truocphan", "version": "22.3.3", "version": "latest", "release": [{"version": "22.3.3", "version": "latest"}], "snapshot": {"author": "truocphan", "version": "22.3.3", "release": [{"version": "latest"}]}}'
>>> Jobj = json_duplicate_keys.loads(Jstr)
>>> Jobj
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': 'latest', 'release': [{'version': '22.3.3', 'version{{{_2_}}}': 'latest'}], 'snapshot': {'author': 'truocphan', 'version': '22.3.3', 'release': [{'version': 'latest'}]}}
>>>
>>> Jobj["version{{{_2_}}}"] = "22.3.14"
>>> Jobj
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': '22.3.14', 'release': [{'version': '22.3.3', 'version{{{_2_}}}': 'latest'}], 'snapshot': {'author': 'truocphan', 'version': '22.3.3', 'release': [{'version': 'latest'}]}}
>>> json_duplicate_keys.dumps(Jobj)
'{"author": "truocphan", "version": "22.3.3", "version": "22.3.14", "release": [{"version": "22.3.3", "version": "latest"}], "snapshot": {"author": "truocphan", "version": "22.3.3", "release": [{"version": "latest"}]}}'
>>>
>>> Jobj
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': '22.3.14', 'release': [{'version': '22.3.3', 'version{{{_2_}}}': 'latest'}], 'snapshot': {'author': 'truocphan', 'version': '22.3.3', 'release': [{'version': 'latest'}]}}
>>> Jflat = json_duplicate_keys.flatten(Jobj)
>>> Jflat
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': '22.3.14', 'release||$0$||version': '22.3.3', 'release||$0$||version{{{_2_}}}': 'latest', 'snapshot||author': 'truocphan', 'snapshot||version': '22.3.3', 'snapshot||release||$0$||version': 'latest'}
>>>
>>> Jflat['snapshot||release||$0$||version'] = "22.3.14"
>>> Jflat
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': '22.3.14', 'release||$0$||version': '22.3.3', 'release||$0$||version{{{_2_}}}': 'latest', 'snapshot||author': 'truocphan', 'snapshot||version': '22.3.3', 'snapshot||release||$0$||version': '22.3.14'}
>>>
>>> json_duplicate_keys.unflatten(Jflat)
{'author': 'truocphan', 'version': '22.3.3', 'version{{{_2_}}}': '22.3.14', 'release': [{'version': '22.3.3', 'version{{{_2_}}}': 'latest'}], 'snapshot': {'author': 'truocphan', 'version': '22.3.3', 'release': [{'version': '22.3.14'}]}}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for json_duplicate_keys-22.4.28.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf77159962fbcf795b768f34aa69d5b5c6a3d251aab486b7c33b0193fd7744c3 |
|
MD5 | d0984ab350ba07f36b4d010ea0c9b652 |
|
BLAKE2b-256 | a759c88a459168825ad91fd7cf33508de8e26d489aa892749c643db2729f8dc1 |
Close
Hashes for json_duplicate_keys-22.4.28-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af972d9c01d1ed6728ef7d9379a1758e9848aaf8c55026baf81170c7f8ce6103 |
|
MD5 | 488b7e1950732496f2aad85337e8ab95 |
|
BLAKE2b-256 | e987407bb4caadd34e28722eb1f550f0b661918592225f4488819558d1c672f8 |