Allows to serialize python classes into JSON objects and deserialize JSON objects into python classes
Project description
JSON Transform
Json Transform allows you to simply serialize your Python objects into a JSON format and vice versa.
New? Here is some help:
Example
Setup your object.
from jsontransform import field, JsonObject
class Customer(JsonObject):
def __init__(self):
self._first_name = ""
self._age = 0
# set a custom name for the field becuase by default it will be the function name
@property
@field("firstName")
def first_name(self):
return self._first_name
@first_name.setter
def first_name(self, value):
self._first_name = value
@property
@field()
def age(self):
return self._age
@age.setter
def age(self, value):
self._age = value
Instantiate the object and serialize it.
from jsontransform import Serializer
new_customer = Customer()
new_customer.first_name = "Peter"
new_customer.age = 1
# get a dict representation of the object
# result: {"firstName": "Peter", "age": 1}
Serializer.to_json_dict(new_customer)
# we can also write the object directly into a file
with open("new_customer.json", "w") as f:
Serializer.to_json_file(f, new_customer)
Deserialize a JSON file into your object.
JSON file (customer.json):
{
"firstName": "Dennis",
"age": 70
}
Code:
from jsontransform import Deserializer
# we load our customer object
with open("customer.json", "r") as f:
customer = Deserializer.from_json_file(f)
customer.age
# result: 70
customer.first_name
# result: Dennis
More
- Check out the documentation.
- Check out the history
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
json-transform-0.1.9.tar.gz
(11.5 kB
view hashes)
Built Distribution
Close
Hashes for json_transform-0.1.9-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d53c382b6ca11c7134c1e38d852dcd3d4284adbcc8f24b3cbb1efc4d014a67f |
|
MD5 | 65e8cf65c2409b7b2ef33401f25f2d22 |
|
BLAKE2b-256 | dd999fb56ff6f92ec617ee0a5dea9f346c1a973aaf1b20099de65fdbb9a22a05 |