访问Json值Python

Pyt*_*kie 0 python json key-value

我有一个json文件,我试图访问该值,但我一直收到一个错误,上面写着"TypeError:string indices必须是整数,而不是str"

这是Json数据.

{'sentiment': '{\n  "0": {\n    "comment": "Chibok schoolgirls were swapped for 5 Boko Haram commanders \n    "username": "@NigeriaNewsdesk:, @todayng", \n    "score": 0.0\n  }\n}'}
Run Code Online (Sandbox Code Playgroud)

data = val ['sentiment']打印数据将此返回给我

{
 "0": {
  "comment": "Chibok schoolgirls were swapped for 5 Boko Haram commanders", 
  "username": "@NigeriaNewsdesk:, @todayng", 
  "score": 0.0
 }
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试访问键/值对时,我得到数据中的记录错误:print(records ["0"] ["username"])

TypeError: string indices must be integers, not str
Run Code Online (Sandbox Code Playgroud)

知道我为什么会收到这些错误吗?谢谢

Orp*_*hid 5

在你发布的json中,sentiment存储了一个json字符串,而不是一个json对象.你需要解析json - 例如json.loads(val['sentiment']),或者将json存储为json对象.