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.3.1.tar.gz
(6.4 kB
view hashes)
Built Distribution
Close
Hashes for json_transform-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06081fa2b3e28e09c792b94da89dfd8e813eb0920208e7e005408e0abf8fe9db |
|
MD5 | 4a76aaaac2edb5cbe1564f007ad5e567 |
|
BLAKE2b-256 | 5c7f72863ece297a6a8d3189b60a6dfe25cde6345b07a32ff53a48349564016a |