2013-07-21 178 views
3

如何在Python中添加如下字典?在Python中追加字典

list1 = {'value1':1} 
list2 = {'value2':2} 

list1.append(list2) 

當附加:

'dict' object has no attribute 'append' 

我如何加入這兩個名單呢?

+1

這不是一個列表,它是一本字典 –

回答

7

這些是詞典,而不是列表。

嘗試list1.update(list2)

更新的語義和追加是不同的,這是因爲底層的數據結構是不同的。字典中現有鍵的值將被它們在參數字典中的值覆蓋。

關於Data Structures的Python教程部分會經歷這一點以及更多。

+0

啊,這就解釋了一切......謝謝:P – zurfyx

+0

@Jerry你是否正在嘗試更新一本字典 - 或者你還在期待別的什麼? –

+0

@JonClements我一直在尋找答案,是的。謝謝 – zurfyx

0

雖然這些是詞典,而不是列表,如歐文說,追加到字典使用update()函數。

例子:

list1 = {'value1': 1} 
list2 = {'value2': 2} 
list1.update(list2) 

否則,如果您需要追加到列表,只需使用追加

l = range(10) 
l.append(range(10, 19)) 

注意,最後一個例子附加了一個列表,而不是10號,所以在這種情況下,其長度將是11.

+0

當你談論'字典'時,我根本不會使用* append *這個詞 - 它只是沒有描述正在完成的操作,而且它可能會產生同樣的混淆,導致OP首先提出這個問題。 – Marius

+0

這就是爲什麼我在_appending_中使用斜體。看上面。 – none