学科分类
目录
基础

转义字符

其实,不管使用单引号还是使用双引号包含,使用print输出字符串的时候,值都是一样的。至于为什么两种情况都可以表示字符串,是因为某些情况下它们会派上用场,例如下面的代码:

print("let's go!")
print('"Nice to meet you ! "he said')

运行代码,结果如下所示:

let's go!
"Nice to meet you! "he said

上面的代码中,第1行代码的字符串内容中有单引号,所以要使用双引号包含。而第2行代码的字符串内容中有双引号,所以要使用单引号包含。如果不这么做,当解释器在根据单引号或者双引号辨别字符串的结束符时,难免会发生错误。例如,下面的代码就会报错:

 print('let's go! go')

运行代码,结果如下所示:

  File "<input>", line 1
    print('let's go! go')
               ^
SyntaxError: invalid syntax

当然,对于单引号或者双引号这些特殊的符号,我们可以对它们进行转义,例如,对字符串中的单引号进行转义,示例代码如下:

 print('let\'s go! go')

运行代码,结果如下所示:

let's go! go

上述代码中,使用斜线的方式,对单引号进行了转义,这样当解释器遇到这个转义字符的时候,会明白这不是字符串的结束标记。而像这样的转义符号有很多种,接下来,通过一张表来列举,如表1所示。

表1 转义字符

转义字符 代表含义
\(在行尾时) 反斜杠符号
\ 反斜杠符号
\" 双引号
\b 退格(Backspace)
\e 转义
\000
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数,yy代表的字符,例如:\o12代表换行
\xyy 十六进制数,yy代表的字符,例如:\x0a代表换行
\other 其他的字符以普通格式输出

当然,如果你不想使用反斜杠(\)转义特殊字符,可以在字符串前面添加一个r,表示原始字符串,示例代码如下:

 print('E\nglish')

运行代码,结果如下所示:

E
glish

添加原始字符串r,具体代码如下所示:

print(r'E\nglish')

运行代码,结果如下所示:

E\nglish
点击此处
隐藏目录