Python – Sum of tuple elements
Last Updated :
17 Jun, 2023
Sometimes, while programming, we have a problem in which we might need to perform summation among tuple elements. This is an essential utility as we come across summation operations many times and tuples are immutable and hence required to be dealt with. Let’s discuss certain ways in which this task can be performed.
Sum the elements of a Tuple in Python
There are several methods by which we can get the sum of elements of a tuple in Python. A few methods are given below:
- Using list() + sum() to find Python Sum of Tuple
- Python map() + sum() + list() to find sum of tuple
- Using for loop to find the sum of tuples in Python
- Python list comprehension to find the sum of tuple
- Sum of the tuple using a generator expression and the built-in sum() in Python
- Sum of tuple with Math in Python
- Sum of tuple with ZIP function in Python
- Python reduce() + operator.add() to find sum of tuple
- A sum of tuple with Numpy in Python
Using list() + sum() to Find Python Sum of Tuple
In this example, we are defining function names as a summation that takes a tuple test_tup as input. After that, we are converting the tuple into a list and a for loop to traverse through the list and add the sum into a count variable.
Python3
def summation(test_tup):
test = list (test_tup)
count = 0
for i in test:
count + = i
return count
test_tup = ( 5 , 20 , 3 , 7 , 6 , 8 )
print (summation(test_tup))
|
Output :
The original tuple is : (7, 8, 9, 1, 10, 7)
The summation of tuple elements are: 42
Find sum of Tuple using map() + sum() + list()
In this example, we have a tuple of lists. we are in the map function and which does sums of every list inside the tuple and appends the sum of every list to a new list then we are calling the sum function on the final list and assigning it to a res variable.
Python3
test_tup = ([ 7 , 8 ], [ 9 , 1 ], [ 10 , 7 ])
print ( "The original tuple is : " + str (test_tup))
res = sum ( list ( map ( sum , list (test_tup))))
print ( "The summation of tuple elements are : " + str (res))
|
Output :
The original tuple is : (7, 8, 9, 1, 10, 7)
The summation of tuple elements are: 42
Sum of tuples in Python using for Loop
In this example, we are using a for loop to traverse through the tuple and add the values to the res variable and print it.
Python3
test_tup = ( 7 , 8 , 9 , 1 , 10 , 7 )
print ( "The original tuple is : " + str (test_tup))
res = 0
for i in test_tup:
res + = i
print ( "The summation of tuple elements are : " + str (res))
|
Output :
The original tuple is : (7, 8, 9, 1, 10, 7)
The summation of tuple elements are : 42
Python List Comprehension to find the Sum of Tuple
In this example, we use list comprehension to convert the tuple to a list and sum up the elements.
Python3
def summation(test_tup):
test = [x for x in test_tup]
return sum (test)
test_tup = ( 5 , 20 , 3 , 7 , 6 , 8 )
print (summation(test_tup))
|
Output :
49
Sum of the Tuple using a Generator Expression and the Built-In sum() in Python
The summation2 function takes a tuple as input and calculates the sum of its elements. It checks that the tuple is not empty or it has any other datatype then it raises an error. Then we create an iterable to iterate in the tuple. Send the iterable to the sum function which returns the total_sum.
Python3
def summation2(test_tup):
if len (test_tup) = = 0 :
raise ValueError( "Input tuple is empty" )
if not all ( isinstance (x, int ) for x in test_tup):
raise TypeError( "Input tuple must contain only integers" )
iterable = (x for x in test_tup)
total_sum = sum (iterable)
return total_sum
test_tup = ( 5 , 20 , 3 , 7 , 6 , 8 )
print (summation2(test_tup))
|
Output :
49
Sum of tuple with Math in Python
In this example, first, we have Imported the math library. Then we Initialized the tuple test_tup with the given elements. Then we created a variable res and assign it the value returned by the math.fsum() function, which calculates the sum of all the elements in the tuple.
Python3
import math
test_tup = ( 7 , 8 , 9 , 1 , 10 , 7 )
res = math.fsum(test_tup)
print ( "The summation of tuple elements are : " + str (res))
|
Output :
The summation of tuple elements are : 42.0
Sum of tuple with ZIP function in Python
In this example, we are using the zip function to combine the three tuples and we are using the map(sum, combined) which calculates the sum of elements using sum.
Python3
tuple1 = ( 1 , 2 , 3 )
tuple2 = ( 4 , 5 , 6 )
tuple3 = ( 7 , 8 , 9 )
combined = zip (tuple1, tuple2, tuple3)
result = tuple ( map ( sum , combined))
print (result)
|
Output :
(12, 15, 18)
Python reduce() + operator.add() to find sum of Tuple
The reduce() function can be used to iterate through the tuple and the operator.add() function can be used for the summation of elements.
Python3
import operator
from functools import reduce
def summation(test_tup):
return reduce (operator.add, test_tup)
test_tup = ( 5 , 20 , 3 , 7 , 6 , 8 )
print (summation(test_tup))
|
Output :
49
Sum of tuple with Numpy in Python
To find the sum of the elements in a tuple, we could convert the tuple to a Numpy array and then use the numpy.sum() function.
Python3
import numpy as np
test_tup = ( 7 , 8 , 9 , 1 , 10 , 7 )
test_array = np.array(test_tup)
print ( "The original tuple is : " + str (test_tup))
res = np. sum (test_array)
print ( "The summation of tuple elements are : " + str (res))
|
Output :
The original tuple is : (7, 8, 9, 1, 10, 7)
The summation of tuple elements are : 42
Please Login to comment...