Python 中的原始字符串 (r 字符串) 为什么不能以反斜杠结尾?
r 字符串中的 r 表示原始字符串。字符串文字可以选择使用字母“r”或“R”作为前缀;此类字符串称为原始字符串,并使用不同的规则来解释反斜杠转义序列。
在出现“r”或“R”前缀时,反斜杠后面的字符将按原样包含在字符串中,且所有反斜杠都将保留在字符串中。例如,字符串文字 r“\n”由两个字符组成−
- 一个反斜杠和
- 一个小写字母“n”。
可以使用反斜杠转义字符串引号,但反斜杠仍保留在字符串中;例如,r""" 是一个有效的字符串文字,由两个字符组成−
- 一个反斜杠和
- 一个双引号;
r"" 不是一个有效的字符串文字。具体而言,原始字符串不能以单个反斜杠结尾。单个反斜杠后跟换行符将被解释为字符串的一部分,而不是行续行符。
对于 Windows 路径名,Windows 系统调用也接受正斜杠−
f = open("/mydir/demo.txt")
DOS 命令的路径名−
dir = r"\this\is\my\dos\dir" "" dir = r"\this\is\my\dos\dir\ "[:-1] dir = "\this\is\my\dos\dir"
广告