我想从JSON API中提取数字并计算这些数字的总和。格式为
{
comments: [
{
name: "Matthias"
count: 97
},
{
name: "Geomer"
count: 97
}
...
]
}
我的代码是
import json
import urllib
url = 'http://python-data.dr-chuck.net/comments_204529.json'
print 'Retrieving', url
uh = urllib.urlopen(url)
data = uh.read()
print 'Retrieved',len(data),'characters'
result = json.loads(url)
print result
我可以得到这个数据中有多少个字符的结果,但不能继续使用代码,因为它说JSON对象无法解码。
有谁知道如何完成此代码?非常感谢!
答案 0 :(得分:0)
首先,我建议您研究内置的Python Data Structures,以便更好地了解您正在处理的内容。
result
是词典,result["comments"]
是词典列表 - 您可以制作list comprehension来获取所有词典评论计数:
>>> import json
>>> import urllib
>>>
>>> url = 'http://python-data.dr-chuck.net/comments_204529.json'
>>> uh = urllib.urlopen(url)
>>> result = json.load(uh)
>>>
>>> [comment["count"] for comment in result["comments"]]
[100, 96, 95, 93, 85, 85, 77, 73, 73, 70, 65, 65, 65, 62, 62, 62, 61, 57, 50, 49, 46, 46, 43, 42, 39, 38, 37, 36, 34, 33, 31, 28, 28, 26, 26, 25, 22, 20, 20, 18, 17, 15, 14, 12, 10, 9, 8, 6, 5, 3]