Skip to content

Instantly share code, notes, and snippets.

@JonasGroeger
Created April 16, 2014 22:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JonasGroeger/10939782 to your computer and use it in GitHub Desktop.
Save JonasGroeger/10939782 to your computer and use it in GitHub Desktop.
A decorator to serialize objects. Apply the decorator to the class.
# coding=utf-8
import json
__author__ = 'Jonas Gröger <jonas.groeger@gmail.com>'
def jsonify(cls):
def to_json(obj, **kargs):
return json.dumps(obj, default=lambda o: o.__dict__, **kargs)
cls.to_json = to_json
return cls
@jsonify
class Item(object):
def __init__(self, ident, age, name, water):
self.ident = ident
self.age = age
self.name = name
self.water = water
if __name__ == '__main__':
item = Item(0, 30, 'John', True)
print(item.to_json())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment