有没有办法用总和中的列表项进行计算?

Is there a way to make calculations with list items within a sum?

我正在尝试编写一个程序来计算我的物理测量的标准偏差 class。该函数接受一个列表和一个平均值,它需要像这样工作 picture。由于总和,当我以这种方式尝试时,代码会抛出错误“float is not iterable”,但如果没有总和,我只会得到计算的最后结果,而不是实际结果。

def deviate(argument):
  for item in argument:
    result = math.sqrt((1/(len(argument) - 1)) * sum((item - average)**2))
  return result

print(deviate(list_in))

根据您分享的图片以及您提供的代码,这种使用列表推导式计算总和的方法看起来是等效的 - 我无法在没有示例输入和输出的情况下对其进行测试:

import statistics

def deviate(argument):
    n = len(argument)
    average = statistics.mean(argument)
    return math.sqrt((1 / (n - 1)) * sum([((item - average) ** 2.0) for item in argument]))