2017-10-07 153 views
-2

我對編程和Python非常陌生,並試圖弄清楚事情的真相。我試圖從列表中取出項目並將鍵和值附加到字典中,但我無法弄清楚如何。我嘗試使用字典的更新方法,但我只從列表中獲取最後一項,而不是所有項目。這裏是我的代碼:如何將列表中的項目添加到字典中?

a = {} 
names = [ {'name': 'Bart'}, {'name': 'Lisa'}, {'name': 'Maggie'} ] 
for name in names: 
    a.update(name) 

結果我找回的是:

{'name': 'Maggie'} 

但我想這在我的新字典:

{'name': 'Bart'}, {'name': 'Lisa'}, {'name': 'Maggie'} 

我想放的物品從字典中的列表中訪問這些值。我需要所有的名字,但也許有一個更簡單的方法來做到這一點。

任何提示都會很棒。謝謝。

+1

那麼你會想'a ['name']'導致什麼?字典只能有一個特定鍵的值。它看起來像你想要的是一個字典列表,你已經擁有了...。 – zondo

+2

那不是一本字典... –

+0

好吧,那麼我如何訪問列表中的值?例如,如果我想訪問「Bart」這個名字,我該怎麼做? – johnnewbie25

回答

0

具有相同的鍵值,你不能從字典列表更新字典。你可以得到一個字典的鍵值列表。

{'name': ['Bart', 'Lisa', 'Maggie']} 

a={} 
    for n in names: 
    ...  for k in n: 
    ...    for k,v in [(k,n[k])]: 
    ...      if k not in a:a[k]=[v] 
    ...      else: a[k].append(v) 
相關問題