您好,当我学习 python 时,我被下面的问题阻止了,我在网站上尝试了一些解决方案,但到目前为止没有一个有效。当我编译时,它返回我:字符串索引必须是整数。 你能帮我吗?谢谢。
import json
import urllib
url = raw_input('Enter location: ')
uh = urllib.urlopen(url)
data = uh.read()
print 'Retrieving', url
print 'Retrieved', len(data), 'characters'
info = json.loads(data)
#print 'User count:', len(info)
s = 0
for item in info:
print item["comments"]["count"]
网址包含类似这样的内容
{
"note":"This file contains the sample data for testing",
"comments":[
{
"name":"Romina",
"count":97
},
{
"name":"Laurie",
"count":97
},
{
"name":"Bayli",
"count":90
},
{
"name":"Siyona",
"count":90
},
{
"name":"Taisha",
"count":88
},
{
"name":"Ameelia",
"count":87
},}
最佳答案
您的 for
循环与数据结构不匹配。
试试这个:
for item in info["comments"]:
print item["count"]
如果您想查看名称与计数的关联,请尝试:
for item in info["comments"]:
print item["name"], item["count"]
如果您想查看名称、计数及其在该列表中的位置,请尝试:
for index, item in enumerate(info["comments"]):
print index, item["name"], item["count"]
关于python json错误:string indices must be integers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41470540/