カテゴリー
コンピューター

【Python 3】【IDLE】EOL while scanning string literal エラーについて調べました

エラー内容

EOL while scanning string literal

意訳:

文字列リテラルを探している間に最終行(EOL)が来ちゃった。

Python 3 IDLE の反応

  • 編集している時点で、文字列リテラルで閉じていない状態で改行した時点すると、カーソルは0桁目には来ない。インデントされた状態となる。
  • エラー発生場所の背景が赤く色づき、カーソルが移動するのでわかりやすい

エラーを含んだコード例

のコードを書いている時に次のように間違えました。8行目の引数の文字列を閉じておりません。

書いている時、bigs = make_lines_set('big.txt) を改行した時点でカーソルが0桁目ではなく、インデントされた状態となるため、このタイミングでも気がつくことができます。

ただし、わたくしたちは変なところでインデントされるわね、、、と思ったものの無視してしまいました><。

def make_lines_set(txt):
    f = open(txt)
    lines = f.readlines()
    sets = set(lines)
    f.close()
    return sets

bigs = make_lines_set('big.txt)
smalls = make_lines_set('small.txt')

results = bigs.difference(smalls)
for result in results:
    print(result)

おわりに

初心者がつまづきがちなミスをしました><。活かせませんでしたけれども IDLE は教えてくれるのですね♪

こんな初歩的なことを記録するのはちょっと惨めなきもちになるかしら、、、と一瞬頭をよぎりましたけれども、ひとつひとつ確実にできることを増やしていくほうが実りがございます。

ですので今回投稿いたしました。

以上です。

コメントを残す