Python中dump、load和dumps、loads的區別
阿新 • • 發佈:2020-09-21
Python中dump、load和dump、loads的區別
dump
json.dump()用於將dict型別的資料轉成str,並寫入到json檔案中。
import json
Dict = {"name": "tutu"}
with open("./file.json", "w") as f:
json.dump(Dict, f)
load
json.load()用於從json檔案中讀取資料
實際相當於在loads的基礎上,原碼裡多做了一個f.read()的操作
import json with open("./file.json", "r") as f: Dict = json.load(f) print(Dict)
dumps
json.dumps()用於將dict型別的資料轉成str,因為如果直接將dict型別的資料寫入json檔案中會發生報錯,因此在將資料寫入時需要用到該函式。
import json
Dict = {"name": "tutu"}
Str = json.dumps(Dict)
with open("./file.json", "w") as f:
f.write(Str)
json序列化時,預設遇到中文會轉換成unicode,如果想要保留中文在序列化時,在dumps函式中新增引數ensure_ascii=False即可解決。
loads
json.loads()用於將str型別的資料轉成dict。
import json
Dict = {"name": "tutu"}
Str = json.dumps(Dict)
Dict1 = json.loads(Str)