json對象轉字典存儲

json的用法

json的數據轉換

將對象轉爲字典

1.這是可以實現一行一行讀取的發方法,文件大的時候就需要用到這種方法

import json

class Dict():
	
	def __init__(self,name,age):
		self.name = name
		self.age = age

def d2dict(d):
	return {'name':d.name,'age':d.age}
if __name__ == '__main__':
	d = Dict('進傑',18)
	with open('1.text','w',encoding='utf-8') as f:
		str1 = json.dumps(d, default=d2dict,ensure_ascii=False)
         f.write(str1)

2.這個是一下子讀取完.write方法都不用寫

import json

class Dict():
	
	def __init__(self,name,age):
		self.name = name
		self.age = age

def d2dict(d):
	return {'name':d.name,'age':d.age}
if __name__ == '__main__':
	d = Dict('進傑',18)
	    with open('1.text', 'w',encoding="utf-8") as f:
    		json.dump(d, f, default=d2dict,ensure_ascii=False)

將字典轉爲對象

import json

class Dict():

    def __init__(self, name, age):
        self.name = name
        self.age = age


def dict2d(d):
    return Dict(d['name'],d['age'])

if __name__== '__main__':
    with open('1.text','r') as f:
        obj =json.loads(f.read(), object_hook=dict2d)
        print(obj)
        #for line in f.readlines():當f裏面有多個對象時,分行閱讀
            #obj = json.loads(line, object_hook=dict2a)
            #print(obj)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章