Skip to main content

A Python Object-JSON-Object serializer package

Project description

Introducing Python Data Contracts

With this package you can define your own data contracts strictly and define data validations and pre-processing steps which will insure data integrity and capable of serializing to-and-from JSON format.

Example Usage

from serializer import Interface
class IP(Interface):

    # Declaring data type validations
    ip_address = str
    host_name = str

class Record(Interface):
    user_name = str
    age = int
    ip = IP

    # Pre-processors to standardize data
    def __user_name__(value):
        return value.capitalize()

args = {
    'user_name': 'ximi', 
    'age': 21, 
    'ip': IP(ip_address='192.168.2.1', host_name='localhost')
    }
request = Record(**args)
print ("Serializing from Object to JSON: \n", request.serialize())
# Serializing from Object to JSON:  
# {'user_name': 'Ximi', 'age': 21, 'ip': {'ip_address':'192.168.2.1', 'host_name': 'localhost'}}
args = {
    'user_name': 'ximi', 
    'age': 21, 
    'ip': {
        'ip_address': '192.168.2.1',
        'host_name': 'localhost'
        }
    }
request = Record(**args)
print ("Serialise with Reverse type conversion: \n", request.serialize())
# Serialise with Reverse type conversion: 
# {'user_name': 'Ximi', 'age': 21, 'ip': {'ip_address': '192.168.2.1', 'host_name': 'localhost'}}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-serializer-1.0.2.tar.gz (2.3 kB view hashes)

Uploaded Source

Built Distribution

python_serializer-1.0.2-py3-none-any.whl (3.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page