在Python中添加列表元素

时间:2016-02-04 03:20:14

标签: python list vector elements

如何添加两个列表的元素以创建包含更新值的新列表。例如:

EnumWindows

我知道这是一个简单的问题,但我对这件事情不熟悉,无法在其他任何地方找到答案......

4 个答案:

答案 0 :(得分:1)

zip()方法可能是按顺序添加列的最佳方法。

a = [1, 3, 5] #your two starting lists
b = [2, 4, 6]
c = [] #the list you would print to
for x,y in zip(a, b): #zip takes 2 iterables; x and y are placeholders for them.
    c.append(x + y) # adding on the the list

print c #final result

您可能想要了解列表推导,但对于此任务,它不是必需的。

答案 1 :(得分:1)

>>> a = [1,2,3]
>>> b = [3,4,5]
>>> import operator
>>> map(operator.add, a, b)
[4, 6, 8]

对于Python3,您需要使用list,结果为map

>>> list(map(operator.add, a, b))
[4, 6, 8]

或只使用通常的列表理解

>>> [sum(x) for x in zip(a,b)]
[4, 6, 8]

答案 2 :(得分:0)

您可以使用itertools.izip_longest方法来解决此问题:

def pairwise_sum(a, b):
  for x, y in itertools.izip_longest(a, b, fillvalue=0):
    yield x + y

然后您可以像这样使用它:

a = [1, 2, 3]
b = [3, 4, 5]
answer = list(pairwise_sum(a, b))

答案 3 :(得分:0)

>>> a = [1,2,3]
>>> b = [3,4,5]
>>> map(sum, zip(a, b))
[4, 6, 8]