JSON编码解码对应dump与load
JSON是一种轻量级的数据交换格式,表示出来的是一个字符串,可以被所有语言读取。在Python中,JSON处理文件本质上就是一个编码、解码的过程。
JSON库中的dump和dumps方法实现JSON编码功能。区别是dump方法将编码后的数据存到文件中,而dumps方法产生一个JSON字符串
这里dump写入文件产生的是一个json字符串,而dumps转化成json然后在写入是一个普通的字符串
dump写入一个json字符串需要打开一个写入的文件
import json
a = {'invalid':{'src':'work-e','dst':'work-d','falg':'1'}}
# 自带写入;写入json字符串
fp = open('b.json','w',encoding='utf-8')
json.dump(a,fp)
fp.close()
# "{\"invalid\": {\"src\": \"work-e\", \"dst\": \"work-d\", \"falg\": \"1\"}}"
而手动写入元素外是没有双引号的
# 文件写入,写入字符串
with open('a.json','w',encoding='utf-8') as f:
print(json.dumps(a))
a = json.dumps(a)
f.write(a)
# {"invalid": {"src": "work-e", "dst": "work-d", "falg": "1"}}
load是从json文件中读取的数据转化为dict,loads是将json格式的数据转化为dict
load和loads方法实现JSON解码功能,load需要从文件加载数据解码,而loads加载字符串进行解码。
努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。