python中的json操作 dump() dumps() load() loads()

什么是json,就不用介绍了

python中对json的操作可以使用python自带的json库的 dump() dumps() load() loads()四个方法。

首先说明基本功能:

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

dump和load也是类似的功能,只是与文件操作结合起来了。


1.dumps()与loads()

dumps是将dict转化成str格式,loads是将str转化成dict格式。通过代码可以直观地理解。

import json

a = {'name': 'wang', 'age': 29}

b = json.dumps(a)

print b, type(b)
# {"age": 29, "name": "wang"} < type'str' >

json.loads(b)
# {u'age': 29, u'name': u'wang'}

print type(json.loads(b))
# < type'dict' >

2.dumps()与dump() / loads()与load()

dump和load也是类似的功能,只是与文件操作结合起来了。

扫描二维码关注公众号,回复: 8916907 查看本文章

简单说就是dump需要一个类似于文件指针的参数(并不是真的指针,可称之为类文件对象),可以与文件操作结合,也就是说可以将dict转成str然后存入文件中;而dumps直接给的是str,也就是将字典转成str。

同理,load也需要输入一个文件指针变量。

dump用于写入,配合文件指针fp = file.open('test.txt', 'w')

load用于读出,配合文件指针fp = file.open('test.txt', 'r')

3.dumps和loads实现原理。

dumps简单说就是讲python中的各种数据类型,转换为json的类型。loads同理,将json的类型转换为python支持的类型。

下表是dumps后的类型转换

loads后的类型转换


4.处理自己的数据类型

比较复杂,本文暂不探讨。有兴趣的同学可以在参考文献《2. Json概述以及python对json的相关操作》查看相关内容。


参考文献:

1. Python操作json的标准api库参考:http://docs.python.org/library/json.html

2. Json概述以及python对json的相关操作 https://blog.csdn.net/hellovictoria/article/details/42236753

3. python json.dumps() json.dump()的区别 https://www.cnblogs.com/wswang/p/5411826.html


发布了9 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/jjiejingtazhu/article/details/81002047
今日推荐