Python 为什么原始字符串(r-strings)不能以反斜杠结尾

Python 为什么原始字符串(r-strings)不能以反斜杠结尾

在r-strings中,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"

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程