SyntaxError: EOL…が出たときは

Python

Pythonで SyntaxError: EOL while scanning string literal とエラーが表示される場合には一体何が悪いのでしょうか?

エラーの意味

SyntaxError: EOL while scanning string literal

直訳しますと「構文エラー:文字列リテラルのスキャン中にファイルの終わりに到達しました。」となります。

ちなみに、「EOF」は「End of file」の略で、まんま「ファイルの終わり」を表しています。
また、SyntaxError (シンタックスエラー)は「構文エラー」という意味です。


つまり「文字リテラルを走査(スキャン)していたら、ファイルの終わりに到達してしまった」という意味です。

エラーの例

Python IDLE Shell に表示された場合

Python IDLEのテキストエディタを使用していた場合など

解決策

この場合は文字列リテラルの閉じ忘れに起因しているか、文字列操作の周りで起こっているはずです。

一般的な例としては次のようなケースがあげられます。

name = 'Kabocy
print('Hello)

文字列リテラルを閉じていない。(文字列の終わりに、「’」や「”」がない)

name = 'Kabocy"
text = input("入力してください: ')

文字列を囲う記号の不一致など、です。

そのほかにも、文字列操作を行う関数などを使用する際に、同様のエラーが発生したりもします。

では!

(Manual Kabocy Knowlge Base ID: MK0000001)