寫json--json.dumps
代碼:
import json #要寫入文件的json串(dict格式)
result ={'errorTest': [('63', '租房修xxx', '400', 'https://appapi.xxxx.com/appapi/brainchoosehouse/v1/updaterent', ' 請求的數據有誤,請檢查[Request Data]字段是否是標准的json格式', '曹操')], 'run_data': {'stime': '2019-10-10 10:22:39', 'fail_case': 1, 'etime': '2019-10時00分00秒', 'all_case': 1341, 'jump_case': 176, 'run_case': 1165, 'pass_case': 1164}} #以json格式寫入文件
with open("result.txt", "w") as fp: fp.write(json.dumps(result,indent=4))
效果:
這里看到json串中的中文變成了unicode串
為了把unicode串轉成中文
可以這樣寫:
#ensure_ascii=False 表示不要以ascii碼格式寫入文件
with open('result.txt', 'w') as fp: fp.write(json.dumps(result,indent=4,ensure_ascii=False))
效果:
讀json-json.load
with open('result.txt','r') as load_f:
load_dict=json.load(load_f) print(type(load_dict),load_dict) #結果: <class 'dict'> {'errorTest': [['63', '租房xxxx選房卡', '400', 'https://appapi.xxxx.com/appapi/brainchoosehouse/v1/updaterent', ' 請求的數據有誤,請檢查[Request Data]字段是否是標准的json格式', '張三']], 'run_data': {'stime': '2019-10-10 10:22:39', 'fail_case': 1, 'etime': '2019-10時00分00秒', 'all_case': 1341, 'jump_case': 176, 'run_case': 1165, 'pass_case': 1164}}
參考文檔: