提问人:Drankenkin 提问时间:10/30/2023 最后编辑:Drankenkin 更新时间:10/30/2023 访问量:106
我无法对嵌套循环的数字求和。TypeError:“float”对象不能解释为整数 [closed]
I can't sum the numbers of a nested loop. TypeError: 'float' object cannot be interpreted as an integer [closed]
问:
我想对所有元素求和并得到结果,但我得到错误:item
18
TypeError: 'float' object cannot be interpreted as an integer
问题是我无法将values_subtraction_average值相加:5.0、0.0、-4.0、4.0、-2.0、-2.0、-1.0。所以我认为问题出在第二个循环上。
目标是使用第一个循环从平均值中减去每个单独的值,得到 5.0、0.0、-4.0、4.0、-2.0、-2.0、-1.0。接下来,在第二个循环中,我想将values_subtraction_average的所有结果相加并得到结果。我该如何解决问题?我需要哪一行代码?18
法典:
values = [29, 24, 20, 28, 22, 22, 23]
average = sum(values) / len(values)
for single_value in values:
values_subtraction_average = single_value - average
# >>> 5.0, 0.0, -4.0, 4.0, -2.0, -2.0, -1.0.
for item in range(values_subtraction_average):
x = sum(float(item))
答:
1赞
XMehdi01
10/30/2023
#1
你能显示变量存储total
abs(values_subtraction_average)
values = [29, 24, 20, 28, 22, 22, 23]
average = sum(values) / len(values)
total = 0
for single_value in values:
values_subtraction_average = single_value - average
total += abs(values_subtraction_average)
print(total)
#18
评论
1赞
EJoshuaS - Stand with Ukraine
10/30/2023
这并不能提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论。 - 来自评论
0赞
XMehdi01
10/31/2023
@EJoshuaS-StandwithUkraine 也许你不明白需要什么
1赞
Andrej Kesely
10/30/2023
#2
尝试:
values = [29, 24, 20, 28, 22, 22, 23]
x = sum(values) / len(values)
y = sum(abs(v - x) for v in values)
print(y)
print(y / len(values))
指纹:
18.0
2.5714285714285716
评论
0赞
Drankenkin
10/30/2023
直到现在我才意识到,使用您的代码,我得到了一个关于行 x = sum(values) / len(values) 的错误。错误是 TypeError:“numpy.float64”对象不可调用。我该如何解决?:)
0赞
Andrej Kesely
10/30/2023
@Nonsaprei 您可能已经分配给 or 变量(不要使用与 python 内置变量相同的变量名称)sum
len
2赞
CoolDuck
10/30/2023
#3
如果要从平均值获得值的差值之和,可以遍历值并计算差值,然后将此差值添加到单独的总变量中,如下所示:
values = [29, 24, 20, 28, 22, 22, 23]
average = sum(values) / len(values)
total = 0
for single_value in values:
values_subtraction_average = single_value - average
# >>> 5.0, 0.0, -4.0, 4.0, -2.0, -2.0, -1.0.
total += abs(values_subtraction_average)
评论
sum(float(item))
没有意义。一个数字的总和是多少?