Jun-04-2017, 11:08 PM
I never use pickle,json is a better choice.
But for this a database is better.
dataset is easy,i have a tutorial here
So could look like this for your task.
But for this a database is better.
dataset is easy,i have a tutorial here
So could look like this for your task.
>>> import dataset >>> db = dataset.connect('sqlite:///cartoon.db') >>> table = db['cartoon'] >>> r1 = { "studentld": 50, "firstname": 'Homer', "lastname": 'Simpson'} >>> r2 = { "studentld": 100, "firstname": 'Clark', "lastname": 'Superman'} >>> table.insert(r1) 1 >>> table.insert(r2) 2 # look at db >>> [user for user in db['cartoon']] [OrderedDict([('id', 1), ('studentld', 50), ('lastname', u'Simpson'), ('firstname', u'Homer')]), OrderedDict([('id', 2), ('studentld', 100), ('lastname', u'Superman'), ('firstname', u'Clark')])] # Find one >>> homer = john = table.find_one(firstname='Homer') >>> homer OrderedDict([('id', 1), ('studentld', 50), ('lastname', u'Simpson'), ('firstname', u'Homer')]) # SQL queries >>> [i for i in db.query("SELECT MAX(studentld) FROM cartoon")] [OrderedDict([(u'MAX(studentld)', 100)])]Freeze to json.
result = db['cartoon'].all() dataset.freeze(result, format='json', filename='cartoon.json') # Read json >>> import json >>> with open('cartoon.json') as j: ... result = json.load(j) ... >>> result {u'count': 2, u'meta': {}, u'result': [{u'firstname': u'Homer', u'id': 1, u'lastname': u'Simpson', u'studentld': 50}, {u'firstname': u'Clark', u'id': 2, u'lastname': u'Superman', u'studentld': 100}]}