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 JSONCodable
import json
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
# ]
# }
# }
class Test3(JSONCodable):
pass
json_str = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}'
print(Test3.from_json(json_str))
print(Test3.from_json(json_str).hometown)
# 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.12.tar.gz
(3.0 kB
view hashes)
Built Distribution
Close
Hashes for jsoncodable-0.0.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08e9d25bab1e44ee2072f49fed4f8a42b196ae64e5a8a0df13473cac011430e3 |
|
MD5 | a660a732994c559a4d6c57264fee206e |
|
BLAKE2b-256 | 4d33f88041b99f6c1439a503fdaa0ba49f80633079ebeff460b6cc83832a9106 |