首页 > 解决方案 > Python如何计算范围列表的平均值?

问题描述

有人可以告诉我我做错了什么吗?

我收到错误 Vidurkis = sum(B)/len(B) TypeError: 'int' object is not callable

A = int(input('Betkoks skaicius'))

if A == 0:
    print('Ačiū')
if A <= 10 and A>=-10: 
    if A<0:
        print('Neigiamas vienženklis')
    if A>0:
        print('Teigiamas vienženklis')

else:
     print('| {:^20} |'.format('Autorius: '))
for r in range(10,A,1):

    Vidurkis = sum(r)/len(r)
    print(Vidurkis)

标签: python-3.xaverage

解决方案


sum = 0

sum不再是内置sum功能!您将不得不重命名该变量。然而,真正的错误是,您正在应用将可迭代作为整数参数的函数(您的循环变量B是一个intwhilesum并且len期望 alist或类似变量)。以下就足够了:

r = range(10, A, 1)  # == range(10, A)
Vidurkis = sum(r)/len(r)  # only works for A > 10, otherwise ZeroDivisionError

推荐阅读