In Python, programmers work with a lot of lists. Sometimes, it is necessary to find out the sum of the elements of the lists for other operations within the program.
In this article, we will take a look at the following ways to calculate sum of all elements in a Python list:
1) Using sum() Method
Python provides an inbuilt function called sum() which sums up the numbers in a list.
- Iterable – It can be a list, a tuple or a dictionary. Items of the iterable have to be numbers.
- Start – This number is added to the resultant sum of items. The default value is 0.
The method adds the start and the iterable elements from left to right.
sum(list) sum(list, start)
# Python code to explain working on sum() method # Declare list of numbers numlist = [2,4,2,5,7,9,23,4,5] numsum = sum(numlist) print('Sum of List: ',numsum) # Example with start numsum = sum(numlist, 5) print('Sum of List: ',numsum)
Sum of List: 61 Sum of List: 66
Here, you can see that the sum() method takes two parameters – numlist, the iterable and 5 as the start value. The final value is 61 (without the start value) and 66 (with the start value 5 added to it).
2) Using for Loop
# Python code to calculate sum of integer list # Using for loop # Declare list of numbers numlist = [2,4,2,5,7,9,23,4,5] # Calculate sum of list numsum=0 for i in numlist: numsum+=i print('Sum of List: ',numsum)
Sum of List: 61
Here, a for loop is run over the list called numlist. With each iteration, the elements of the list are added. The result is 61 which is printed using the print statement.
3) Sum of List Containing String Value
# Python code to calculate sum of list containing integer as string # Using for loop # Declare list of numbers as string numlist = ['2','4','2','5','7','9','23','4','5'] # Calculate sum of list numsum=0 for i in numlist: numsum+=int(i) print('Sum of List: ',numsum)
Sum of List: 61
Here, the list called numlist contains integers as strings. Inside the for loop, these string elements are added together after converting them into integers, using the int() method.
4) Using While Loop
# Python code to calculate sum of list containing integer as string # Using While loop # Declare list of numbers as string numlist = [2,4,2,5,7,9,23,4,5] # Declare function to calculate sum of given list def listsum(numlist): total = 0 i = 0 while i < len(numlist): total = total + numlist[i] i = i + 1 return total # Call Function # Print sum of list totalsum = listsum(numlist); print('Sum of List: ', totalsum)
In this program, elements of the numlist array are added using a while loop. The loop runs until the variable i is less than the length of the numlist array. The final summation is printed using the value assigned in the totalsum variable.
Using a for loop or while loop is great for summing elements of a list. But the sum() method is faster when you are handling huge lists of elements.