python附加一个列表的语法错误

时间:2016-10-10 15:01:00

标签: python python-2.7 syntax append syntax-error

我的目标是创建一个名为residuals的列表,它返回一个列表,其中每个元素的绝对值减去平均值,我也在最后返回数据,因为这是我正在使用的列表。我得到了这个,但是residuals.append(new_number)语法错误。

data = [92.5, 87.7, 74.8, 93., 91.7, 90.0, 90.3, 92.5, 100.0, 
  100.0, 35.7, 37.4, 21.0]

def residuals(number):
    residuals = []
    for element in number:
        new_number = abs(element - float(avg(number))
        residuals.append(new_number)
        print residuals
residuals(data)

1 个答案:

答案 0 :(得分:3)

我想分享一种技巧来弄清楚你何时犯了这个特殊错字,我相信我是从Clark Weissman的Lisp 1.5 Primer(PDF)中学到的。你通过使用错误的括号数,逐字符,计数来读取表达式。每当你来(时,你都会计算一个,而每次来)时,你都会倒数一个。当你结束时,你的计数应为零。

    new_number = abs(element - float(avg(number))
                    1               2   3      21

这里,最后的计数大于零,所以我们知道有一个缺失的关闭paren。如果它小于零,我们就知道我们已经遗漏了一个空位。请注意,告诉您 where 添加parens。在像

这样的结构中
 x = foo(a, bar(b, baz(c, d), e)
        1      2      3    2   1

缺少的关闭paren可能属于bcde之后,我们必须了解被调用的函数以告知哪些函数。