在 Python 中,我们可以使用 json 模块的 loads() 函数来将一个字符串转换成一个 JSON。loads,其实就是 “load string” 的缩写。
语法:
import json
json.loads(字符串)说明:
字符串必须符合 JSON 格式,才能被 json.loads() 函数正确转换。也就是说,该字符串必须是一个 JSON 型字符串。
提示: json.dumps() 函数用于将 JSON 转为字符串,而 json.loads() 函数用于将字符串转为 JSON。
示例 1:将 “字典型字符串” 转为 JSON
import json
s = '{"book": "从0到1", "author": "Jack", "price": 59}'
result = json.loads(s)
print(result)
print(type(result))运行结果如下。
{'book': '从0到1', 'author': 'Jack', 'price': 59}
<class 'dict'>分析:
小伙伴们要搞清楚,上面例子中的 s 是一个字符串,因为它使用单引号包裹着了。这种符合 JSON 格式的字符串,也叫做 “JSON 字符串”。
从结果可以看出,json.loads() 返回的是一个字典。既然返回的是一个字典,接下来我们就可以使用字典的方法来进行操作了。比如想要获取书名,我们可以使用 result['book'] 来实现。
示例 2:将 “列表型字符串” 转为 JSON
import json
string = '[{"name": "小杰", "age": 21}, {"name": "小兰", "age": 19}, {"name": "小华", "age": 20}]'
result = json.loads(string)
print(result)
print(type(result))运行结果如下。
[{'name': '小杰', 'age': 21}, {'name': '小兰', 'age': 19}, {'name': '小华', 'age': 20}]
<class 'list'>分析:
从结果可以看出,json.loads() 返回的是一个列表。既然返回的是一个列表,接下来我们就可以使用列表的方法来对其进行操作了。
