欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

load、loads、dump、dumps的区别

发布时间:2025/3/21 37 豆豆
生活随笔 收集整理的这篇文章主要介绍了 load、loads、dump、dumps的区别 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

json.dumps():将一个python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串

json.loads():将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典
代码展示:

import jsondate={'city':'beijing','city1':'shanghai','city2':'wuhan'} print(type(date)) #<class 'dict'>date1=json.dumps(date) print(date1) #{"city": "beijing", "city1": "shanghai", "city2": "wuhan"} print(type(date1)) #<class 'str'>date2=json.loads(date1) print(date2) #{'city': 'beijing', 'city1': 'shanghai', 'city2': 'wuhan'} print(type(date2)) #<class 'dict'>

当字典种含有中文数据
代码展示:

data={'city':'北京','city1':'上海','city2':'武汉'}data1=json.dumps(data,ensure_ascii=False) print(data1) #{"city": "北京", "city1": "上海", "city2": "武汉"} print(type(data1)) #<class 'str'>data2=json.loads(data1) print(data2) #{'city': '北京', 'city1': '上海', 'city2': '武汉'} print(type(data2)) #<class 'dict'>

通过上述的实例,我们可以清楚的看到json字符串和字典数据类型的转变,上述为啥使用jsom.dumps使用ensure_ascii=False呢,这是因为json.dumps序列化时对中文默认使用的ascii编码,想输出真正的中文需要指定ensure_ascii=False:

json.dump():用于将字典类型的数据转化为字符串类型,并将数据写入json文件中。
代码展示:

name_emb={'city':'beijing','city1':'shanghai','city2':'wuhan'} emb_filename=(r'D:\software\1.txt')#方法1 object=json.dumps(name_emb) with open(emb_filename,'w') as f:f.write(object)#方法2 res=json.dump(name_emb,open(emb_filename,'w'))

json.load():用于从文件种读取数据
代码展示:

object1=json.load(open(emb_filename)) print('文件中的内容是:',object1) #文件中的内容是: {'city': 'beijing', 'city1': 'shanghai', 'city2': 'wuhan'}

总结

以上是生活随笔为你收集整理的load、loads、dump、dumps的区别的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。