扫描字符串文字时聊天机器人错误 EOL

chatbot error EOL while scanning string literal

这是我的代码:

for files in os.listdir('C:/Users/Tatheer Hussain/Desktop//ChatBot/chatterbot-corpus-master/chatterbot_corpus/data///english/'):
    data = open('C:/Users/Tatheer Hussain/Desktop//ChatBot/chatterbot-corpus-master/chatterbot_corpus/data///english/'+ files , 'r').readlines()
    bot.train(data)

我得到这个语法错误: 扫描字符串文字时 EOL

\是Python中的转义字符。如果您的字符串以 \ 结尾,它将转义右引号,因此字符串不再正确终止。

您应该通过在左引号前加上前缀 r:

来使用原始字符串
os.listdir(r'C:/Users/Tatheer Hussain/Desktop//ChatBot/chatterbot-corpus-master/chatterbot_corpus/data///english/')

发生错误是因为反斜杠。 反斜杠是转义字符,因此字符串的引号被转义。为了在字符串中使用反斜杠,请使用双反斜杠。 例如:

for file in os.listdir('files'):
    chats=open(r'files\'+file,'r').readlines()