2014-02-19 27 views
0
import json 
import urllib2 
data = json.load(urllib2.urlopen(#api_url) 
print data 

这将返回是这样的:Json的字典索引

{u'count': 1, u'type': u'UserProfile', u'pagination': {}, u'params': {u'user_id': u'user'}, u'results': [{u'number': 31}]} 

当我尝试这样做:

data["results"]["number"] 

它返回:

TypeError: list indices must be integers, not str 

所有我想做的事返回“31”并将这些数据存储在一个变量中。我该怎么做呢?

回答

0

data['results']列表含有字典:

>>> data['results'] 
[{u'number': 31}] 
>>> data['results'][0] 
{u'number': 31} 

使用整数索引,然后字符串键:

data["results"][0]["number"] 
超过 data['results']

或环;很有可能会出现一个以上的结果number键:

>>> [r['number'] for r in data['results']] 
[31] 
+0

啊,这绝对有道理!谢谢。 – mjmostachetti

+0

感谢您的领导!我对此很陌生。 :) – mjmostachetti