2015-07-20 118 views
0

从API中我收到了JSON数据,其中包含列表中的多个字典。Python:接收字典或字典列表

result = [{u'username': u'someuser', 
      u'archived': False, 
      u'locked': False}, 
      {u'username': u'someotheruser', 
      u'archived': False, 
      u'locked': False}] 

当我拿到这几条,我将它们添加到列表

data = [] 
data.extend(result) 

但是,如果我查询这个API的一个条目,我只是得到一个字典和.extend不起作用了。

result = {u'username': u'someuser', 
      u'archived': False, 
      u'locked': False} 

但我真的想使用相同的功能,因为唯一的变化就是要查询的URL。任何想法如何做到这一点,或者我应该为单个查询做一个自己的功能?

+0

检查的种类和使用'append'如果它是一本字典? – NightShadeQueen

+1

当然,你可以测试你是否正在查询单个条目或系列,然后根据需要切换到使用'list.append()'? –

回答

1

您可以定义一个函数来使用append如果result是一本字典,并extend如果是一个列表:

def myextend(data, result): 
    if isinstance(result, dict): 
     data.append(result) 
    elif isinstance(result, list): 
     data.extend(result)