Skip to content Skip to sidebar Skip to footer

Sum Of Elements Stored Inside A Tuple

Given a tuple containing a bunch of integer elements, how can one find the sum of all the elements? For example, if I have a list of tuples: li = [(1, 2), (1, 3), (2, 3)] How can

Solution 1:

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)
<mapobject 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.

Solution 2:

You could use list comprehension.

>>>li = [(1, 2), (1, 3), (2, 3)]>>>[x+y for (x,y) in li]
[3, 4, 5]

Solution 3:

Both solutions below will work.

li = [(1, 2), (1, 3), (2, 3)]
print([sum(i) for i in li])

or

defsumtupleinlist(lst):
    return [sum(i) for i in lst]
li = [(1, 2), (1, 3), (2, 3)]

To test the function, run :

print(sumtupleinlist(li))

Solution 4:

For beginner:

  1. Create result variable which type is list.
  2. Iterate every item from the give list by for loop.
  3. As every item is tuple so again iterate item from the step 2 and set sum of item to 0.
  4. Add sum.
  5. Append sum to result variable.

Demo:

>>>li = [(1, 2), (1, 3), (2, 3)]   # Given Input>>>result = []                     # Step 1>>>for i in li:                    # Step 2...    tmp_sum = 0# Step 3  ...for j in i:                 # Step 3...        tmp_sum += j            # Step 4 ...    result.append(tmp_sum)      # Step 5 ...>>>print result
[3, 4, 5]

Solution 5:

ls= [(1,2), (3,4)]
finallist = []
for tuple inls:
     listt = list(tuple)
     summ = 0
     for m in listt:
         summ+=m
     finallist.append(summ)
print(finallist) #[3,7]

Post a Comment for "Sum Of Elements Stored Inside A Tuple"