to_dict
Project description
jsoncodable
Description
Easily create object from any dict and dict from any object
Install
pip install jsoncodable
# or
pip3 install jsoncodable
Usage
from jsoncodable import *
import json
# ---------------------------------------- Any object to json dict ---------------------------------------- #
class Test1:
def __init__(self, value: int):
self.value1 = value
self.value2 = value * 2
self.values = [self.value1, self.value2]
class Test2(JSONCodable):
def __init__(self, value: int):
self.test1 = Test1(value)
test2 = Test2(5)
print(test2.dict)
# prints:
#
# {'test1': <__main__.Test1 object at 0x1018199d0>}
print(json.dumps(test2.json, indent=4))
# or
test2.jsonprint()
#
# both will print:
#
# {
# "test1": {
# "value1": 5,
# "value2": 10,
# "values": [
# 5,
# 10
# ]
# }
# }
# ---------------------------------------- Any json dict to object ---------------------------------------- #
class Test3(JSONCodable):
pass
json_str = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}'
print(Test3.from_json(json_str))
# prints:
#
# JSONCodable(name='John Smith', hometown=JSONCodable(name='New York', id=123))
print(Test3.from_json(json.loads(json_str)))
# prints:
#
# JSONCodable(name='John Smith', hometown=JSONCodable(name='New York', id=123))
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
jsoncodable-0.0.9.tar.gz
(3.2 kB
view hashes)
Built Distribution
Close
Hashes for jsoncodable-0.0.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70cd159fc41da28be0fb83944cc8cfa61f9f518a415c9a40a6572c4fa1c9c5eb |
|
MD5 | 1ea6b8781b3b311eb32d3021a60a30a2 |
|
BLAKE2b-256 | 738d4b723480ad972db8cdfd25ba39c92945d645efdbbf4b2e12e34ad84fd2b6 |