之前学Python时一直用json.dump将数据存储到一个json文件中,今天突然蹦出来一个dumps顿时懵逼。
首先查了Python对json.dump的官方解释
json.dump是将一个obj转换成json的格式存储到文件fp中,该文件类型为json
Python对json.dumps的官方解释为
json.dumps是将一个obj转化成json的数据格式,只是数据类型的转化
同理json.load和json.loads
json.load将一个json格式的文件导入Python,并将其中存储的json格式数据转化为Python类型
json.loads在Python中将json数据类型的格式转化成Python数据类型
总结:
需要存储或读取json数据文件时,用json.load和json.dump
需要在Python中转换数据类型时,用json.loads和json.dumps,如爬虫
附1:Python 编码为 JSON 类型转换对应表:
Python | JSON |
---|---|
dict | object |
list, tuple | array |
str | string |
int, float, int- & float-derived Enums | number |
True | true |
False | false |
None | null |
附2:JSON 解码为 Python 类型转换对应表:
JSON | Python |
---|---|
object | dict |
array | list |
string | str |
number (int) | int |
number (real) | float |
true | True |
false | False |
null | None |