2

私は emacs シェル (emacs 24、debian、スナップショット) 内で 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

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はありません。

もう 1 つのよくある原因は、空白とタブの不注意による混合です。PEP 8 - Python のスタイル ガイドでは、タブのインデントに空白を使用することを推奨しています。

于 2012-08-24T02:59:43.050 に答える