在我写的文件中(从实际代码中剥离)
e = numpy.zeros(4)
n = e.copy()
n[0]=e[0]
for i in range(len(e)-1)+1:
n[i] = n[i-1]*e[i] + e[i]
当我运行 .py 文件时,Python 说:
>>> for i in range(len(e)-1)+1:
... n[i] = n[i-1]
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate list (not "int") to list
奇怪的是,如果我将 "i=1"(或其他值)和执行实际工作的一行粘贴到 Python 提示符中,则没有错误。无论如何,我没有看到任何列表;都是 numpy 数组。
请您参考如下方法:
range(len(e)-1) + 1
这是将一个整数 (1) 连接到一个列表 (range(...))。
也许你打算这样做?
for i in range(1, len(e)):
