是不是一直傻傻分不清楚dumps、dump、loads和load的关系,长痛不如短痛,今天索性就把它写明白,不懂得朋友,请看下面。
这里我先回答一个很常见的问题,为什么 Python 会有四个操作 Json 的函数?按理说应该就只有两个的,一个解码,一个编码。
首先 Json 是一种数据格式,文件通常是以.json作为后缀,这种结构在互联网很是常见和方便。Python 这么牛逼,也想添加这个结构性的数据,所以 dict字典数据类型就这么来了, dict 也是键和键值的结构,和 Json 几乎一致。
但是问题了,Json 文件这么的流行,Python 也需要支持 Json文件的读取和写入的,所以json.load()和json.dump(),就这么被设计出来了。
但是随着Python爬虫的兴起,越来越多的 Python 爬虫需要处理网站抓取的 json 数据,进行处理转换为 Python 字典类型,但是现有的 load 和 dump 并不能解决这样的问题,所以此时 json.loads()和json.dumps() 隆重登场。