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
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
Answers:
json.dumps()
将字典转换为str
对象,而不是json(dict)
对象!因此,您必须使用方法将其加载str
到dict
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
loaded_r
考虑到您已经将json加载回一个单独的变量中,您认为这样做效率不高r
吗?