## Python || Find The Average Using A List – Omit Highest And Lowest Scores

This page will consist of a program which calculates the average of a specific amount of numbers using a list.

REQUIRED KNOWLEDGE FOR THIS PROGRAM

```Lists For Loops Arithmetic Operators Basic Math - How To Find The Average ```

The following program is fairly simple, and was used to introduce the list concept. This program prompts the user to enter the total amount of numbers they wish to find the average for, then displays the answer to the screen. Using a sort, this program also has the ability to find the average of a list of numbers, omitting the highest and lowest valued items.

``` Find The Average Using A List Python # ============================================================================= # Author: K Perkins # Taken From: http://programmingnotes.org/ # Date: Jan 29, 2014 # File: Average.py # Description: The following demonstrates finding the average of numbers # contained in a list. # ============================================================================= # calculate the average of numbers in a list def Average(arry, size): total = 0 # traverse the list adding all the items together for x in range(size): total += arry[x] # return the average return total / size ## end of Average def main(): # declare variables arry = [] # initialize the list numElems = 0 # ask user how many items they want to place in list numElems = int(input("How many items do you want to place into the list?: ")) # print a newline print("") # user enters data into list using a for loop for x in range(0, numElems): arry.append(int(input("Enter item #%d: " % (x+1)))) # display data print("nThe current items inside the list are: ") for x in range(0, numElems): print("Item #%d: %d" % ((x+1), arry[x])) # display the average using a function print("nThe average of the %d numbers is %.2f" % (numElems, Average(arry, len(arry)))) # sort the numbers in the list from lowest to highest arry.sort() # erase the highest/lowest numbers arry.pop(len(arry)-1) arry.pop(0) # display the average using a function print("nThe average adjusted score omitting the highest and " "lowest result is %.2f" % (Average(arry, len(arry)))) ## end of main if __name__ == "__main__": main() # http://programmingnotes.org/ 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 # =============================================================================#   Author:  K Perkins#   Taken From: http://programmingnotes.org/#   Date:  Jan 29, 2014#   File: Average.py#   Description: The following demonstrates finding the average of numbers#     contained in a list.# =============================================================================# calculate the average of numbers in a listdef Average(arry, size):    total = 0     # traverse the list adding all the items together    for x in range(size):        total += arry[x]     # return the average    return total / size## end of Average def main():    # declare variables    arry = [] # initialize the list    numElems = 0     # ask user how many items they want to place in list    numElems = int(input("How many items do you want to place into the list?: "))     # print a newline    print("")     # user enters data into list using a for loop    for x in range(0, numElems):        arry.append(int(input("Enter item #%d: " % (x+1))))     # display data    print("nThe current items inside the list are: ")    for x in range(0, numElems):        print("Item #%d: %d" % ((x+1), arry[x]))     # display the average using a function    print("nThe average of the %d numbers is %.2f" %        (numElems, Average(arry, len(arry))))     # sort the numbers in the list from lowest to highest    arry.sort()     # erase the highest/lowest numbers    arry.pop(len(arry)-1)    arry.pop(0)     # display the average using a function    print("nThe average adjusted score omitting the highest and "        "lowest result is %.2f" % (Average(arry, len(arry))))## end of main if __name__ == "__main__":    main()# http://programmingnotes.org/ ```

QUICK NOTES:
The highlighted lines are sections of interest to look out for.

The code is heavily commented, so no further insight is necessary. If you have any questions, feel free to leave a comment below.

The following is sample output.

`How many items do you want to place into the list?: 5`

``` Enter item #1: 7 Enter item #2: 7 Enter item #3: 4 Enter item #4: 8 Enter item #5: 7 The current items inside the list are: Item #1: 7 Item #2: 7 Item #3: 4 Item #4: 8 Item #5: 7 The average of the 5 numbers is 6.60 ```

```The average adjusted score omitting the highest and lowest result is 7.00 ```