5/9 Student becomes the teacher- It's okay to be average- i don't get it!


Please explain it to me!
I would be really grateful if somebody told me how to do this!!! :relieved:

Thx Teardropinfinity :sparkles:


Hi there, I'd like to explain if you'd tell we to explain something, just ask me what you want to know :smiley:


def average(numbers):
#sum of the numbers
total = sum(numbers)
#making the integer a float
total = float(total)
#finding average
total = total / len(numbers)
#storing it until function is called
return total


on the second to last part you can do total /= len(numbers)


Thank you!! :sunglasses: :musical_note:


Thanks Vidura!!
Especially for the pseudo explaining how it all works! :grin:
...before that I was :anguished: sweatin it! Lol


What i don't understand is that they refer to the "list" numbers.
ofcourse there are several list with numbers. So if i set the argument of the function to numbers it will find by itself a list with numbers?

def average(numbers):
    total = sum(numbers)
    return float(total) / len(numbers)


Yeah dat makes code short thanks for showing dat :grinning:


you are welcome mate...


def get_average(student):
homework = average(student["homework"])
quizzes = average(student["quizzes"])
tests = average(student["tests"])

You can see dat next function calls the previous function with the lists one by one..


or you can do it in one function in one line. See example below:
(make sure CODE ACADEMY will not accept this answer, but it's working on my local Python 3.5.1 console)

numbers = [5, 7, 10] #this is my list of numbers

def average(numbers):
total = sum(numbers)
print (float(sum(numbers)) / len(numbers)) #I change return to print in order to see value on the console

average(numbers) #calling function


@ajaxsurfer81772 thanks for sharing serge.. yes there are some changes in python3


Thanks, you wrote the code briefly and clear


lloyd = {
"name": "Lloyd",
"homework": [90.0, 97.0, 75.0, 92.0],
"quizzes": [88.0, 40.0, 94.0],
"tests": [75.0, 90.0]
alice = {
"name": "Alice",
"homework": [100.0, 92.0, 98.0, 100.0],
"quizzes": [82.0, 83.0, 91.0],
"tests": [89.0, 97.0]
tyler = {
"name": "Tyler",
"homework": [0.0, 87.0, 75.0, 22.0],
"quizzes": [0.0, 75.0, 78.0],
"tests": [100.0, 100.0]

Add your function below!

def average(numbers):
total= sum(numbers)
total = float(total)
return total
Keep getting this error:
Oops, try again. average([3, 0]) returned 3.0 instead of 1.5 as expected.


def average(numbers):
total = 0
total = sum(numbers)
total = float(total) / len(numbers)
return total

Its OK