3
比方說,我有2名以下列表:的Python:加入同樣大小的2所列出
列表1 = [1,1,1,1] 列表2 = [3,3,3,3]
我想連接的結果是:
項目list3 [4,4,4,4]
什麼是做到這一點的最好方法是什麼?
比方說,我有2名以下列表:的Python:加入同樣大小的2所列出
列表1 = [1,1,1,1] 列表2 = [3,3,3,3]
我想連接的結果是:
項目list3 [4,4,4,4]
什麼是做到這一點的最好方法是什麼?
極其相似伊格納西奧的回答,但一點點的更簡潔:
list3 = [sum(i) for i in zip(list1, list2)]
或
list3 = map(sum, zip(list1, list2))
我喜歡的地圖版本自己。
編輯:作爲JBernardo正確地指出,如果使用Python 2.x的,你應該更換其迭代對應拉鍊在itertools.izip效率,但拉鍊默認情況下在Python 3當然
list3 = [x + y for (x, y) in itertools.izip(list1, list2)]
或
list3 = map(operator.add, list1, list2)
使用迭代器zip是Python3的正確選擇。對於2.x,你應該更喜歡itertools的izip。順便說一句,你的解決方案比Ignacio的更清潔。 – JBernardo 2011-06-01 23:09:43
很好,謝謝大家 – 2011-06-02 00:14:03