On Sun, 01 Nov 2009 23:54:16 -0800, Jon P. wrote: > I'd like to do: > > resultlist = operandlist1 + operandlist2 > > where for example > > operandlist1=[1,2,3,4,5] > operandlist2=[5,4,3,2,1] > > and resultlist will become [6,6,6,6,6]. Using map(), I can do: > > map(lambda op1,op2: op1 + op2, operandlist1, operandlist2)
If the two lists are very large, it would be faster to use this: from operator import add map(add, operandlist1, operandlist2) > Is there any reasonable way to do this via a list comprehension ? [x+y for (x, y) in zip(operandlist1, operandlist2)] If the lists are huge, you can save some temporary memory by replacing zip with itertools.izip. -- Steven -- http://mail.python.org/mailman/listinfo/python-list