2015-07-20 161 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)