我尝试使用原始字符串表示法在python中设置字符串变量的路径,并且使用尾部斜杠得到错误:
datapath = r'C:\path\to\my\data\'
在扫描字符串文字时给了我一个" EOL"错误
我认为原始字符串表示法应该在字符串文字中创建所有内容。有人可以向我解释一下吗?
由于
答案 0 :(得分:3)
字符串的结束引用有一个例外,因为:
C:\path\to\my\data\'
从字面上看'
,因为上一个反斜杠不被视为转义字符,因此字符串解析会继续。
尽管令人沮丧,但你必须做r'C:\path\to\my\data\\'
答案 1 :(得分:2)
文档以这种方式定义字符串文字:
stringliteral ::= [stringprefix](shortstring | longstring)
您正在使用 r stringprefix。
然后我们对字符串中的字符进行了这些定义:
shortstringchar ::= <any source character except "\" or newline or the quote>
longstringchar ::= <any source character except "\">
您会注意到,向后斜杠