這是我的代碼j = """{ "kind": "youtube#videoListResponse", "items": [ { "kind": "youtube#video", "id": "IEEhzQoKtQU", "statistics": { "viewCount": "171938", "likeCount": "5856", "dislikeCount": "38", "favoriteCount": "0", "commentCount": "368" } } ], "pageInfo": { "totalResults": 1, "resultsPerPage": 1 }}""" js = json.loads(j) js = js["items"] js = js["statistics"] print(js["viewCount"])我是 json 的新手,我試圖從這個(gè) json 字符串中檢索 viewCount。但是每次我運(yùn)行代碼時(shí)都會(huì)收到此錯(cuò)誤:js = js["statistics"]TypeError: list indices must be integers or slices, not str有沒(méi)有人有辦法解決嗎?
1 回答

揚(yáng)帆大魚(yú)
TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超9個(gè)贊
那是因?yàn)閕tems列表確實(shí)是列表,而不是字典。在你的 json 中:
[
{
"kind": "youtube#video",
"id": "IEEhzQoKtQU",
"statistics": {
"viewCount": "171938",
"likeCount": "5856",
"dislikeCount": "38",
"favoriteCount": "0",
"commentCount": "368"
}
}
]
只有一個(gè)項(xiàng)目,但你有一個(gè)列表。如果您想要列表中的第一項(xiàng),您可以使用js[0]["statistics"]. 或者迭代它們,for item in js.
添加回答
舉報(bào)
0/150
提交
取消