Python:加入2个相同大小的列表

mar*_*oss 3 python sum list

假设我有以下两个列表:

list1 = [1,1,1,1] list2 = [3,3,3,3]

我希望join的结果是:

list3 [4,4,4,4]

什么是最好的方法呢?

act*_*imp 11

与Ignacio的答案非常相似,但更简洁:

list3 = [sum(i) for i in zip(list1, list2)]
Run Code Online (Sandbox Code Playgroud)

要么

list3 = map(sum, zip(list1, list2))
Run Code Online (Sandbox Code Playgroud)

我自己更喜欢地图版本.

编辑:正如JBernardo正确指出的那样,如果使用Python 2.x,你应该用itertools.izip中的迭代器替换zip以提高效率,但zip在Python 3中默认使用迭代器.


Ign*_*ams 9

list3 = [x + y for (x, y) in itertools.izip(list1, list2)]
Run Code Online (Sandbox Code Playgroud)

要么

list3 = map(operator.add, list1, list2)
Run Code Online (Sandbox Code Playgroud)