您当前的位置:首页 > 计算机 > 编程开发 > Python

Python中json.dumps() json.loads()json.dump()json.load()区别的简单解析

时间:10-22来源:作者:点击数:

首先json.dumps()对应的json.loads(),dumps是将dict转化成str/json串格式,loads是将str/json格式串转化成dict格式

import json

jsons1 = """{"b":{"a":[{"n1":"WIFI","n2":840,"la":39.9,"l":false},{"n1":"WIFI","p1":"com.tudou.ui.activity.HomeActivity"}]},
        "h":{"i":{"o2":"4.3"}}}"""
print(json.loads(jsons1))
print(type(json.loads(jsons1)))

输入内容如下:

然后我们发现使用json.loads后,类型变为一个dict字典。同时如果细心的童鞋可能会发现,我在代码中编写jsons1后的一串字符中“l”=false,可是我们使用loads转换后输出的却为大写的False,这是因为在Python中布尔类型为True和False,如果在给布尔类型赋值时,大小写写错了就会最经典的错误。例如,

a = true
print(a)

修改为a=True输出正确结果:True。

然后我们再来看json.dumps

import json

jsons1 = """{"b":{"a":[{"n1":"WIFI","n2":840,"la":39.9,"l":false},{"n1":"WIFI","p1":"com.tudou.ui.activity.HomeActivity"}]},
        "h":{"i":{"o2":"4.3"}}}"""
print(json.dumps(jsons1))
print(type(json.dumps(jsons1)))

就是将jsons1转为str类型,在这里我们小写的“l”=false在控制台中输入仍然为小写的false,结果为:

而json.dump()和json.load()与文件的操作有关

执行后打开test.txt查看,jsons1的内容被写入到test.txt文件

执行后打印出

总结:

json.dump是将python数据保存成json,json.load是从txt文件中加载json格式文件内容

json.dumps是将dict转化成str格式,json.loads是将str转化成dict格式

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门