2

我在 emacs shell(emacs 24、debian、snapshot)中运行 isympy 我对 Python 没有太多经验!!以下内容让我发疯:

In [77]: k=0

In [78]: for i in range(3):
   ....: for j in range(3):
   ....:     if i <= j:
   ....:        for l in range(6):
   ....:            J[k,l] = diff(Y[i,j], vars[l])
   ....:        k = k+1
   ....:     else:
   ....:        pass
   ....:     continue
   ....: 

IndentationError: unindent 不匹配任何外部缩进级别

(我已经尝试了很多变化!)

我相信代码是正确的,但 isympy 不这么认为!!

怎么了?

4

1 回答 1

2

第二个for循环需要从第一个缩进,所以而不是

In [78]: for i in range(3):
   ....: for j in range(3):

In [78]: for i in range(3):
   ....:    for j in range(3):

此外,该

else:
   pass 

并没有真正做任何事情,可以被删除。也不清楚continue这里有多大作用。

另一个常见的罪魁祸首是空白和标签的无意混合。PEP 8 - The Style Guide for Python建议使用空格缩进制表符

于 2012-08-24T02:59:43.050 回答