【python】json.load() 和 json.loads() 的區別


 

【1】json.load() 和 json.loads() 的區別

【序列化】json.dump(文件句柄)/json.dumps(內存對象)
字典格式數據--》json格式

【反序列化】
json.load(文件句柄)/json.loads(內存對象)
json格式--》字典格式數據


#
json.load()和json.loads() 的區別,兩者第一個參數不同, # dic = json.loads(s) # dic = json.load(fp)
# load和loads都是實現“反序列化”,區別在於(以Python為例):
# 1、 # loads針對內存對象,即將Python內置數據(字符串)反序列化為 字典
# 使用json.dumps序列化的對象d_json = json.dumps({'a': 1, 'b': 2}),
# 在這里d_json是一個字串 '{"b": 2, "a": 1}' # d = json.loads(d_json) # { b": 2, "a": 1},使用loads重新反序列化為dict # 2、 # load針對 文件句柄 # 如本地有一個json文件a.json則可以d = json.load(open('a.json'))
with open("model.json",'r') as load_f: load_dict = json.load(load_f)
 # 相應的,dump就是將內置類型序列化為json對象后寫入文件
with open("model.json","w") as f: json.dump(new_dict,f) print("加載入文件完成...")
 


【概括】
  • json.load() 反序列化--從文件中讀取json字符串,並將其轉換為 字典格式 
  • json.dump() 序列化--將內置類型 序列化為json對象后,將json格式字符串 寫到文件中
  • json.loads() 反序列化--將json字符串轉換為字典類型
  • json.dumps() 序列化--將python中的字典類型 轉換為字符串類型()

load,dump
可以加載外部文件    
    從外部JSON文件變成dict字典(外部文件一定要是json格式)
    json.lo www.hbbz08.com ad(open('a.json',"r"))
    把dict字典變成json格式,生成到外部文件里面
    json.dump(dict,open('a.json',"w"))

從內存處理
  json={"name":"abc"}
    json.load(json)
從內存處理
   dict={"name":"abc"}
    json.load(dict)
 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM