Sum of elements stored inside a tuple
You can use map
and sum
function like this
>>> li = [(1, 2), (1, 3), (2, 3)]
>>> map(sum, li)
[3, 4, 5]
Alternatively you can use list comprehension, like this
>>> [sum(tup) for tup in li]
[3, 4, 5]
Note: I personally prefer the list comprehension version, because map
function in Python 3.x will return an iterable map
object, which needs to be explicitly converted to a list, like this list(map(sum, li))
.
>>> li = [(1, 2), (1, 3), (2, 3)]
>>> map(sum, li)
<map object at 0x7f3dc25bb0f0>
>>> type(map(sum, li))
<class 'map'>
>>> list(map(sum, li))
[3, 4, 5]
But list comprehension will give a list in both Python 2.x and Python 3.x.
You could use list comprehension.
>>> li = [(1, 2), (1, 3), (2, 3)]
>>> [x+y for (x,y) in li]
[3, 4, 5]
Both solutions below will work.
li = [(1, 2), (1, 3), (2, 3)]
print([sum(i) for i in li])
or
def sumtupleinlist(lst):
return [sum(i) for i in lst]
li = [(1, 2), (1, 3), (2, 3)]
To test the function, run :
print(sumtupleinlist(li))