How to find the average of a list in Python
Problem statement
Given a list of numbers, find the average.
The average is the sum of elements divided by the number of elements.
Example
-
Input:
[1, 2, 3, 4, 5, 6, 7, 8,9] -
Output:
5.0
Explanation
-
Sum of elements = 1+2+3+4+5+6+7+8+9 = 45
-
Number of elements = 9
-
Average = = 5.0
Solution
We can solve this problem with the following methods:
- The
sum()method - The
reduce()andlambdamethods - The
mean()method
The sum() method
We will use the sum() and len() methods to find the average.
-
sum()is used to find the sum of elements in the list. -
len()is used to find the number of elements in the list.
In the code snippet below:
-
In line 1, we initialize the list
list_of_numberswith[1,2,3,4,5,6,7,8,9]. -
In line 5, we divide the sum of the elements by the number of elements to find the average.
-
In line 8, we print the average to the console.
#initializing the list with numberslist_of_numbers = [1,2,3,4,5,6,7,8,9]#find averageavg = sum(list_of_numbers) / len(list_of_numbers)#print averageprint(avg)
The reduce() and lambda methods
We use reduce() and lambda to calculate the sum of the elements in the list.
The following code snippet is the same as above, except for line 7, where we calculate the sum with reduce() and lambda.
from functools import reduce#initializing the list with numberslist_of_numbers = [1,2,3,4,5,6,7,8,9]#find averageavg = reduce(lambda a, b: a + b, list_of_numbers) / len(list_of_numbers)#print averageprint(avg)
The mean() method
We can use Python’s built-in mean() function to calculate the average of a list.
The following code snippet is the same as above, except for line 7, where we can find the average directly with the mean() method.
from statistics import mean#initializing the list with numberslist_of_numbers = [1,2,3,4,5,6,7,8,9]#find averageavg = mean(list_of_numbers)#print averageprint(avg)