9

同じ理由で Python が異なるエラーについて報告するのはなぜですか? コードが 1 行と 2 行のプログラムです。

つまり:

print(1

与える

Error: unexpected EOF while parsing

しかし

a = 1+1
print(1

与える

Error: invalid syntax

同じ問題ですが、エラー メッセージが異なります - 理由は?

sys.version_info(メジャー=3、マイナー=2、マイクロ=0、リリースレベル='ファイナル'、シリアル=0)

4

1 に答える 1

2

最初のケースでは、python は最初の行/コマンドを「探しています」。プログラムの最小値は、少なくとも 1 つのステートメントです。そのため、早期終了について不平を言っています。

したがって、最初のエラー EOF (ファイルの終わり) は次のことを意味します:

前の 2 番目のエラーが実行されたため、コンパイラはこれがプログラムであることを「認識」しています。

エラーは異なりますが、次のことを意味します。

「ねえ、今のところ、この位置にエラーがあります。シンタックスを修正できますか?」

私の非学術的な方法があなたの気を散らさないことを願っています:)

于 2012-11-09T05:37:21.213 に答える