loads和dumps的作用我们直接看代码:
import jsonjson_dict = { 'entity': 'human','relation': 'live'}print(type(json_dict))json_str = json.dumps(json_dict) # 字典-> 字符串print(type(json_str))print(json_str)json_dict2 = json.loads(json_str) # 字符串 -> 字典print('-----------------------------------')print(type(json_dict2))print(json_dict2)
结果:
<class 'dict'><class 'str'>"{"entity": "human", "relation": "live"}"-----------------------------------<class 'dict'>{'entity': 'human', 'relation': 'live'}
我们了解到了loads和dumps是针对字符串和字典之间实现互相转化的作用。
下面我们看一下dump和load的作用,如代码所示:
# 写入json数据文件with open('data.json','w') as f :json.dump(data, f)# 把data文件中的字典转换为json 字符串 写入到 data.json文件中# 读取json数据文件with open('data.json','r') as f :json.load(f) #从文件data.json中读取json字符串,转换为字典类型
通过代码可知道,dump和load主要是针对文件读取及写入时使用,他实现了文件中的字符串和字典之间实现互相转化的功能,是否实现文件读取和写入这一点我想也是dumps,loads和dump,load的不同点,也是他们存在的意义吧