【发布时间】:2023-04-04 19:24:01
【问题描述】:
我遇到的问题是试图取我的列表的平均值(来自 y,它是一个 sin 值的列表)。但是,在运行代码时,我得到了错误
TypeError: float() 参数必须是字符串或数字,而不是“列表”
如果您能提供任何帮助,我们将不胜感激
for k in range(len(y)-1-r):
list_to_avg = [y[r+k:len(y)-1-r+k]]
b =float(sum(list_to_avg, []))
a =float(len(list_to_avg))
z.append(b/a)
【问题讨论】:
-
也有助于提供示例输入。请使用tour 并阅读How to Ask 以获取有关提高此问题质量的提示。正如目前所问的,这不是很好。
-
在没有更多信息的情况下无法确定,但我相信您的错误在这一行
list_to_avg = [y[r+k:len(y)-1-r+k]]。尝试删除外部方括号。您将获得当前编写的列表列表。它还有助于在调试时打印中间变量。
标签: python list sum moving-average