2011-06-01 62 views

回答

11

極其相似伊格納西奧的回答,但一點點的更簡潔:

list3 = [sum(i) for i in zip(list1, list2)] 

list3 = map(sum, zip(list1, list2)) 

我喜歡的地圖版本自己。

編輯:作爲JBernardo正確地指出,如果使用Python 2.x的,你應該更換其迭代對應拉鍊在itertools.izip效率,但拉鍊默認情況下在Python 3當然

+1

使用迭代器zip是Python3的正確選擇。對於2.x,你應該更喜歡itertools的izip。順便說一句,你的解決方案比Ignacio的更清潔。 – JBernardo 2011-06-01 23:09:43

+0

很好,謝謝大家 – 2011-06-02 00:14:03

9
list3 = [x + y for (x, y) in itertools.izip(list1, list2)] 

list3 = map(operator.add, list1, list2)