一尘不染

将字典转换为JSON

json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
file.write(str(r['rating']))

我无法访问JSON中的数据。我究竟做错了什么?

TypeError: string indices must be integers, not str

阅读 313

收藏
2020-07-27

共1个答案

一尘不染

json.dumps()将字典转换为str对象,而不是json(dict)对象!因此,您必须使用方法将其加载strdict
json.loads()

请参阅json.dumps()作为保存方法和json.loads()检索方法。

这是代码示例,可以帮助您进一步了解它:

import json

r = {'is_claimed': 'True', 'rating': 3.5}
r = json.dumps(r)
loaded_r = json.loads(r)
loaded_r['rating'] #Output 3.5
type(r) #Output str
type(loaded_r) #Output dict
2020-07-27