Усреднение чисел в списке - PullRequest
1 голос
/ 02 июля 2019

Найти 5 чисел Найти среднее из чисел

#import statistics
print("enter 5#s")
num1 = int(input())
num2 = int(input())
num3 = int(input())
num4 = int(input())
num5 = int(input())
numbers = [num1, num2, num3, num4, num5]
numsum = sum(numbers)
print("sum is:", numsum)
#Above list is working
#fix below
def Average(numbers):
    return sum(numbers) / len(numbers)
print("AVG = ", round(Average, 2))

Ошибка отслеживания (последний вызов был последним): файл "main.py", строка 15 в печати ("AVG =", округление (Среднее, 2)) TypeError: функция типа dosent define_round_method

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Последняя строка (звонок на print)

def Average(numbers):
    return sum(numbers) / len (numbers)
    print("AVG = ", round(Average, 2))

должен быть без отступа (перемещен влево, вне функции), а функция должна вызываться с numbers в качестве аргумента, например:

def Average(numbers):
    return sum(numbers) / len (numbers)
print("AVG = ", round(Average(numbers), 2))

Ваш код может быть упрощен и улучшен, может быть так:

num_list = []
for i in range(5):
    s = input('Enter the {}. number: '.format(i+1))
    n = int(s)
    num_list.append(n)

the_sum = sum(num_list)
print('Sum:', the_sum)

the_avg = round(the_sum / len(num_list), 2)
print('Avg:', the_avg)

Пример прогона:

Enter the 1. number: 7
Enter the 2. number: 5
Enter the 3. number: 4
Enter the 4. number: 4
Enter the 5. number: 4
Sum: 24
Avg: 4.8
0 голосов
/ 02 июля 2019

Вам нужно добавить дополнительную строку в конце, которая должна быть:

Average(numbers)
...