2015-12-07 157 views
-1

現在我有一個列表中有多個字典的巨大列表。這個結構看起來像這樣[{u'type,u'number ...從字典中檢索到列表python

我想要做的是按類型檢索列表中的所有字典,並將其中的每一個添加到單獨的列表中。所以在我的字典列表中可以說有50個條目都是u類型的。我想讓我的新列表抓取並顯示[type(from dict 1),type(from dict 2)等等。到目前爲止,我在代碼中遇到了一些錯誤。

for bottle in houses: 
    mylist = [] 
    mylist.append(bottle['type']) 

打印這些結果並不能給我預期的結果。

+0

哪裏是冒號,哪裏是縮進? Yoy可能會這樣做'[瓶子['type']在房子裏的瓶子]' –

+0

或'[bottle.get('type',None) –

回答

2

您的代碼存在的問題是您在循環的每次迭代中將mylist重新定義爲空列表。您需要創建mylist你進入for循環之前,再附加給它的循環內,像這樣:

mylist = [] 
for bottle in houses: 
    mylist.append(bottle['type']) 

一個關於蟒蛇偉大的事情是一種叫做列表理解,它允許你這樣做在一行中:

mylist = [bottle['type'] for bottle in houses]