0

我试图取一个数组中每 3 个点的平均值,并将新值输出到一个新数组中。但是,我的代码中的某些内容一定是错误的,因为我不断收到相同的错误消息。

这是我的代码:

# y average values

avgy = [0]*(len(y1)//3)

for i in range (0, len(y1)-2):
    if (3*(1+i)<=len(y1)):
        avgy[i] = ( y1[3*i+1] + y1[3*i+2] y1[3*i])/3


# x average values

avgx = [0]*(len(x1)//3)

for i in range (0, len(x1)-2):
    if (3*(1+i)<=len(x1)):
        avgx[i] = ( x1[3*i+1] + x1[3*i+2] x1[3*i])/3

错误信息:

 File "<ipython-input-12-bebc7029e3d1>", line 16
    avgy[i] = ( y1[3*i+1] + y1[3*i+2] y1[3*i])/3
                                       ^
SyntaxError: invalid syntax

在此先感谢,奥利弗

4

1 回答 1

2

在 y1[3*i])/3 和 x1[3*i])/3 之前缺少 +

# y average values

avgy = [0]*(len(y1)//3)

for i in range (0, len(y1)-2):
    if (3*(1+i)<=len(y1)):
        avgy[i] = ( y1[3*i+1] + y1[3*i+2] + y1[3*i])/3


# x average values

avgx = [0]*(len(x1)//3)

for i in range (0, len(x1)-2):
    if (3*(1+i)<=len(x1)):
        avgx[i] = ( x1[3*i+1] + x1[3*i+2] + x1[3*i])/3
于 2019-03-15T13:01:18.653 回答